您的位置:首页 > 运维架构 > Linux

linux上的Mysql无法再windows下Navicat连接

2017-02-28 08:42 381 查看
报错代码:access denied for user 'root'@'localhost' using password yes

 

 

没查找到是什么原因,但是更改密码之后就可以了.

具体操作如下:

 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456'); 

    GRANT ALL PRIVILEGES ON *.* TO 'root' @'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

    flush privileges;

 

如若忘记了root的密码,按照下边的方法操作修改密码:

第一步:停服务

命令行:

/etc/init.d/mysql stop

如果不行,就执行下一行:

service mysqld stop

报:

Stopping mysqld:  [  OK  ]

第二步:跳过密码验证

执行命令行:

# /usr/bin/mysqld_safe --skip-grant-tables

报:

151104 09:07:56 mysqld_safe Logging to '/var/lib/mysql/iZ23dq2wm0jZ.err'.

151104 09:07:56 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

第三步:无密码登录

执行命令行:

mysql -u root 

第四步:授权

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');

mysql> grant all privileges on *.* to 'root'@'localhost' identified by 'root' with grant option;

关键词解释:

root'@'localhost:是用户

root:是密码

问题一:发现无密码条件下,没有授权的写权限
The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

解决方法:
mysql> set global read_only=0;//(关掉新主库的只读属性)

mysql>flush privileges;

 

mysql>set global read_only=1;//(读写属性)

mysql>flush privileges; (注意刷新是必须项)

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql