1.出现如下图所示
分析原因:
1.该用户没有连接权限
解决方案:
1.连接linux服务器,mysql -u root -p 然后输入root的密码 ,如果忘记密码 ,打开etc 下面的my.cnf 即命令是 vi /etc/my.cnf
2.[mysqld]后面任意一行添加“skip-grant-tables” 然后按Esc按钮 输入 :wq! 保存并退出
3. 重启 /etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)
4. 输入 mysql -u root -p ,到输入密码时,直接Enter
5.不同版本的修改密码不同
对于5.7以下版本:
mysql> use mysql;
mysql> update user set password=password(‘123‘) where user=‘root‘ and host=‘localhost‘;
mysql> flush privileges;
对于5.7及以上版本:
mysql> use mysql;
mysql> update user set authentication_string=password(‘123‘) where user=‘root‘ and host=‘localhost‘;
mysql> flush privileges;
6.修改 /etc/my.cnf 去掉 skip-grant-tables 然后重启 /etc/init.d/mysql restart 或者 /etc/init.d/mysqld restart
7.赋予连接权限 root 是 账户名称, @‘要连接mysql的ip地址‘ ,by ‘要连接的用户密码‘
mysql> grant all privileges on *.* to ‘root‘@‘10.26.114.216‘ identified by ‘[email protected]‘;
mysql> flush privileges;
原因2:查看mysql连接的端口号
mysql> show global variables like ‘port‘;