【Linux下mysql初识】Mysql安装使用第一次碰到的问题

问题一:使用mysql报错-bash:mysql:command not found

mysql -uroot -p
-bash: mysql: command not found
因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时,系统在/usr/bin下面查此命令,所以找不到了
【解决】:
ln -s /usr/local/mysql/bin/mysql /usr/bin 做个链接即可


问题二:使用不指定ip方式登录可直接登录,但是使用ip登录报错如下:

【解决】

mysql -uroot –proot --默认方式登录mysql

GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.24.179.144' IDENTIFIED BY 'root' WITH GRANT OPTION;              --授权登录

【原因深究】

Mysql有两种连接方式:

(1)    socket

(2)    TCP/IP

#(1)socket是本地连接对应使用,其作用是程序与mysqlserver处于同一台机器,发起本地连接时可用。使用的连接文件为/etc/mysql/mysql.sock 。

所以本地访问时, -h只要为空或localhost就可以。

注当改变mysql的外部port也是一样可能正常连接。

因为你在my.ini中或my.cnf中改变端口后,mysql.sock是随每一次 mysql server启动生成的。已经根据你在更改完my.cnf后重启mysql时重新生成了一次,信息已跟着变更。

#(2)使用TCP/IP连接前要先授权,否则不允许访问,授权的方式就是

mysql -uroot –proot       --默认方式登录mysql

GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.24.179.144' IDENTIFIED BY 'root' WITH GRANT OPTION;--授权登录

 

延伸阅读,在mysql的配置文件中可看到这两个相关的配置文件:

 

 

原文地址:https://www.cnblogs.com/annieyu/p/4861665.html