前几篇文档中提到了在centOS7中如何安装mysql5.6或是5.7, 安装之后mysql默认用户名是root, 密码是空,
在centOS中用命令mysql -u -p可以直接测试使用,但是默认的信息有很大弊端的,
下面介绍如何修改mysql(root)默认密码:
方法一:
在mysql系统外,使用mysqladmin
# mysqladmin -u root -p password "test123"
Enter password: 【输入原来的密码】
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
原因是因为mysql5.7默认的安全策略限制,解决方法如下(使用默认密码登录mysql):
set global validate_password_policy=0;
set global validate_password_length=1;
set global validate_password_length=1;
方法二:
通过登录mysql系统,
# mysql -uroot -p
Enter password: 【输入原来的密码】
mysql>use mysql;
mysql> update user set password=passworD("test") where user='root';
mysql> flush privileges;
mysql> exit;
centOS中测试 :
mysql -uroot -p
Enter password:(输入密码)
链接成功!!
然后需要外部(宿主机)访问mysql:
用telnet命令测试3306端口,发现不通,这是因为防火墙的问题,在centOS7中执行一下命令:
systemctl disable firewalld (手动执行一次即可)
systemctl stop firewalld (需要设置开机启动)
然后,在宿主机上面在测试3306端口,发现端口已通!
用sqllog工具链接mysql:
报错 ERROR 1130: Host 192.168.3.100 is not allowed to connect to this MySQL server
解决方法:
mysql -u root -p
mysql>use mysql;
mysql>select 'host' from user where user='root';
mysql>update user set host = '%' where user ='root';
mysql>flush privileges;
再次sqllog链接,链接成功~
以上的问题在安装mysql和链接mysql时发现的,问题的解决是百度搜的,本人亲测可用,做已总结,希望对大家有所帮助~