Ubuntu安装MySQL及使用Navicat连接MySQL出现的问题(2003-Can’t connect to MySql server及1045错误)。
安装MySQL非常快速,只需要几个命令,当已经完全安装好MySQL了,接下来是允许其他电脑连接服务器的MySQL(如果你不需要使用其他工具连接MySQL请自行忽略以下内容)
授权其他设备连接MySQL命令:
(注意!!!如果你有phpmyadmin控制面板,是可以在控制面板可视化操作的,关于具体操作可以百度!!)
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '×××' WITH GRANT OPTION;
%处: 这里写允许其他设备所在的IP地址或者直接用 % 代替,“%”代表所有ip地址
×××: 你的root用户密码
输完此命令还需要在执行重新授权表命令:
mysql>FLUSH PRIVILEGES;
这时候就可以尝试使用其他机器上的设备连接Ubuntu上的mysql(我用的是Navicat),会出现上面的报错。
解决方法如下:
编辑mysql的配置文件:vi /etc/mysql/mysql.conf.d/mysqld.cnf
,找到address=127.0.0.1这一段文本,将它注释掉或则将它改成address =0.0.0.0。这些方法目的是允许其他的主机可以访问服务,而不仅仅是127.0.0.1(localhost)。
重新启动mysql命令:/etc/init.d/mysql restart
停止mysql命令:/etc/init.d/mysql stop
查看mysql启动状态命令:/etc/init.d/mysql status
现在我们重新启动mysql再尝试连接mysql。
注意:出现连接MqSQL不成功的问题,除了以上两个重要的问题,还有可能是平台服务商的问题,例如要在阿里云服务器ECS中配置安全规则(开放端口)、关闭UBuntu操作系统的防火墙(或者在开启防火墙的情况下,使用命令打开3306端口)等等。
能帮的就这么多了,我当时瞎折腾了半天,最后找到问题是 bind-address 没有改!!!