linux 开放mysql端口

问题

在配置mysql后,需要放开3306端口,出现了FirewallD is not running错误

[root@hadoop102 mysql]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
FirewallD is not running

1.启动firewalld

systemctl start firewalld

2.查看firewalld

systemctl status firewalld

3.重新开放端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent

4.查看已开启的端口

firewall-cmd --list-ports

报错

开放之后,telnet连接还是提示

FHost '192.168.190.1' is not allowed to connect to this MySQL server

解释:

这个错误表示客户端尝试连接到MySQL服务器时,服务器检查到客户端的IP地址没有被授权访问权限。MySQL的用户权限是基于用户名和来源IP的组合来判断的。

解决办法:

1.在MySQL所在服务器上使用命令登录到MySQL数据库中

   mysql -u root -p

2.选择mysql数据库,并查询权限



3.查看权限

select host from user where user='root';

4.修改 (前后)

update user set host = '%' where user ='root';

5.刷新

flush privileges;

二.发现还是出现问题 (切记在切换验证插件的时候,重新修改一下密码)

 错误原因是加密方式的问题

    MySql 8.0.11 换了新的身份验证插件(caching_sha2_password),

    而原来的身份验证插件为(mysql_native_password)。

只需要更改一下加密方式即可解决

首先执行如下SQL语句进入mysql数据库

mysql>use mysql;

执行如下SQL语句查看加密方式

mysql>select user, plugin from user where user= 'root';

看到加密方式为caching_sha2_password。

执行如下SQL语句更改加密方式

mysql>alter user "root"@"%"  identified with mysql_native_password by "(your password)";

把(your password)替换成你的密码

再次执行

mysql>select user, plugin from user where user= 'root';

看到加密方式已经改变

三.心态崩了,继续干。

1045-Access denied for user root@192.168.194.1(using password:YES)解决方案

(切记在切换验证插件的时候,重新修改一下密码)刚才因为退出mysql没有修改密码,导致密码错误

3.1) 跳过MySQL密码验证

vi /etc/my.cnf

在第一行加入   skip-grant-tables

3.2)若MySQL已经启动,重启MySQL服务器

systemctl restart mysqld

3.3)将登录密码设置为空,然后退出 exit

update user set authentication_string='' where user='root';

3.4) 1.重新登录,2.刷新权限,3.重置密码

    1.mysql -uroot -p  两次回车

    2. flush privileges;

    3. ALTER USER 'root'@'%' IDENTIFIED BY '新密码';

3.5)将跳过权限去掉

vi /etc/my.cnf

在第一行加入   skip-grant-tables  注释掉

成功连接

参考地址:ERROR 1045 (28000) Access denied for user ‘root‘@‘localhost‘ (using password YES/NO)_error 1045 (28000): access denied for user 'root'@-CSDN博客

  • 12
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值