Centos7的MySQL初次使用教程

背景:

  • 在Centos7中,初次使用MySQL需要一定的步骤才能进行正常使用MySQL,下面为大家讲述初始化MySQL和设置MySQL可以远程连接的步骤
  • 本文适用MySQL 5.7或以上版本

初始化MySQL:

  1. 查看初始化密码

    sudo grep 'temporary password' /var/log/mysqld.log
    

    运行此命令之后将会打印出初始化密码

    但有的同学会遇到打印为空的错误,这时候可以去看我的这篇文章,里面有解决办法——>点击grep 'temporary password' /var/log/mysqld.log打印为空 - 小呆呆的生活 (xiaodaidai.top)

  2. 使用初始化密码进行登录

    mysql -u root -p
    

    接着输入刚刚得知的初始化密码就可以进入MySQL

  3. 初始化密码(必须进行此操作,不然无法进行其他操作)

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'daasan7ujm^YHN';
    

    因为MySQL当前对密码有一定的要求,比如长度、含某些字符等等,所以建议使用上述的密码先,后续我们再修改密码要求从而再进行修改密码

    自此我们就可以进行MySQL的其他操作

修改MySQL密码要求(策略):

  1. 查询MySQL初始的密码要求(策略)

    SHOW VARIABLES LIKE 'validate_password%'; 
    

    打印出来的表里面的字段我就不一一解释了,有点英语基础的应该看得懂,也可以猜得出

  2. 修改密码验证强度

    set global validate_password_policy=LOW; 
    
  3. 修改密码长度

    set global validate_password_length=6;
    

    我们以设置6位长度密码为例

  4. 修改密码

    ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
    

    设置密码为123456

    注意,密码长度最低为4位,设置的密码长度小于4时,默认改成4

设置MySQL远程连接

以root用户远程连接为例:

  1. 修改权限(所有主机都可以远程连接MySQL)

    方法一:

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

    方法二:

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
    
  2. 刷新权限

    FLUSH PRIVILEGES;
    
  3. 配置防火墙

    方法一:直接把防火墙关闭(不安全,不建议)

    systemctl stop firewalld
    

    方法二:设置3306端口开放

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

    看到success表示成功

  4. 重启防火墙

    firewall-cmd --reload
    
  5. 验证3306是否开放成功

    firewall-cmd --zone=public --query-port=3306/tcp
    
  6. 使用MySQL连接工具测试:

    Navicat、MySQL Workbench、phpMyAdmin等等

    能连接上表示成功

总结:

  1. 本文支持Centos7系统初次使用MySQL,其他版本的Linux系统大同小异,自行查别的资料,这里就不逐一列出了
  2. 某些远程连接存在问题的可能是因为MySQL和mysql-connector-java、Java的版本问题,可以查看我另一篇文章,点击MySQL和mysql-connector-java、Java的版本问题 - 小呆呆的生活 (xiaodaidai.top)
  3. 还有别的问题可以在下方评论,我会逐一回复,感谢大家的阅读
点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注