美文网首页
【IT笔记】centos7.x下yum安装Mysql5.7

【IT笔记】centos7.x下yum安装Mysql5.7

作者: 陆拾遗 | 来源:发表于2019-03-22 22:03 被阅读0次

    备注:

    sudo rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
    sudo yum install mysql-community-server 
    service mysqld start
    

    其它说明:

    • 第一次启动后,会生成一个随机root密码,默认在/var/log/mysqld.log这个日志里。执行指令sudo grep 'temporary password' /var/log/mysqld.log 获取密码
    • 修改密码为:123456
      • 登录:mysql -u root -p

      • 密码:eglpQwAH2o?E(我的初始密码)

      • 修改密码:ALTER USER USER() IDENTIFIED BY '123456';

      • 由于MySQL5.6.6版本之后增加了密码强度验证插件validate_password,相关参数设置的较为严格。

      • image.png
      • 设置了好几次才成功,要求真的很严格,现在我们来关闭它。(必须先修改默认密码,才能进行其他操作)

      • 查看规则:SHOW VARIABLES LIKE 'validate_password%';

      • image.png
      • 说明:

        • validate_password_dictionary_file # 插件用于验证密码强度的字典文件路径。

        • validate_password_length # 密码最小长度,参数默认为8,它有最小值的限制

          • 最小值为:validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)
        • validate_password_mixed_case_count # 密码至少要包含的小写字母个数和大写字母个数。

        • validate_password_number_count # 密码至少要包含的数字个数。

        • validate_password_policy # 密码强度检查等级,0/LOW、1/MEDIUM、2/STRONG。有以下取值:

        • Policy                 Tests Performed                                                                                                        
          0 or LOW              Length                                                                                                                      
          1 or MEDIUM        Length; numeric, lowercase/uppercase, and special characters                             
          2 or STRONG        Length; numeric, lowercase/uppercase, and special characters; dictionary file      
          默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。
          
        • validate_password_special_char_count # 密码至少要包含的特殊字符数。

      • 修改规则:

        • set global validate_password_policy=0;
          set global validate_password_mixed_case_count=0;
          set global validate_password_special_char_count=0;
          set global validate_password_number_count=6;
          set global validate_password_length=6;
          SHOW VARIABLES LIKE 'validate_password%';
          
          +--------------------------------------+-------+
          | Variable_name                        | Value |
          +--------------------------------------+-------+
          | validate_password_check_user_name    | OFF   |
          | validate_password_dictionary_file    |       |
          | validate_password_length             | 6     |
          | validate_password_mixed_case_count   | 0     |
          | validate_password_number_count       | 6     |
          | validate_password_policy             | LOW   |
          | validate_password_special_char_count | 0     |
          +--------------------------------------+-------+
          7 rows in set (0.00 sec)
          
      • 再次修改密码:ALTER USER USER() IDENTIFIED BY '123456';

      • 开通远程权限:GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;flush privileges;

      • 设置数据库默认编码:utf8

        • 指令:sudo vim /etc/my.cnf
        • 在my.cnf 配制文件下新增下列二行
        character_set_server=utf8  
        init_connect='SET NAMES utf8'
        
        wait_timeout = 600   # Too many connections的解决方法
        interactive_timeout = 600
        
        • image.png
        • 重启mysql服务:
          • service mysqld stop
          • service mysqld start
        • 查看编码指令(需先进入数据库):show variables like 'character%';
          • image.png

    MySQL5.7导入数据报错ERROR 1067 (42000) at line 1015: Invalid default value for 'service_time'

    解决办法:
    修改my.cnf,
    [mysqld] 下面添加
    sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    explicit_defaults_for_timestamp=1

    相关文章

      网友评论

          本文标题:【IT笔记】centos7.x下yum安装Mysql5.7

          本文链接:https://www.haomeiwen.com/subject/jvwrvqtx.html