1130 host ‘32.434.123.324‘ is not allowed to connect to this MariaDB、 server解决 mysql访问权限

centos
解决
1130 host ‘32.434.123.324’ is not allowed to connect to this MariaDB
"ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES

连接服务器 打开shell

//输入
mysql -u root -p
//输入密码 输入完成直接回车即可
Enter password:

mysql> use mysql
//看看有哪些ip有权限
mysql> select host,user,password from user;

//更新用户表 有没有用到的ip直接替换
mysql> UPDATE `user` SET `Host` = '113.128.*.*' where `Host` = '113.128.*.*';
//或者
//授权用户表 添加新ip
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'113.116.*.*' IDENTIFIED BY '***' WITH GRANT OPTION;



mysql> flush privileges;

//看看更新结果
mysql> select host,user,password from user;

如果提示
"ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES

不用怀疑!是密码不对

1,执行 vim /etc/my.cnf   ,打开文件后,找到mysqld关键字,
按inset进入编辑模式
在mysqld下面添加skip-grant-tables,
按esc退出编辑模式
输入:wq保存退出

2,执行 systemctl restart mariadb.service
,重启之后,再尝试登陆mysql,遇到需要输入密码,直接回车

3,执行 use mysql

4,执行 update user set password=PASSWORD("你的新密码") where user="root";   这是mysql的执行语句,所以记得末尾加上;5,执行 exit ,退出mysql

6,执行 vim /etc/my.cnf,打开文件后, 
按inset进入编辑模式
把刚才添加的 skip-grant-tables 删掉,
按esc退出编辑模式
输入:wq保存退出

7,执行 systemctl restart mariadb.service

重启之后,就可以用刚才设置的密码登录mysql了。

你可能感兴趣的:(系统,mysql,linux,centos)