zoukankan      html  css  js  c++  java
  • mac使用brew安装mysql

    1、安装mysql

    #brew install mysql
    

    报错

    Error: The following directories are not writable by your user:
    /usr/local/lib
    
    You should change the ownership of these directories to your user.
      sudo chown -R $(whoami) /usr/local/lib
    

    意思是 您应该将这些目录的所有权更改为您的用户

    执行以下命令设置权限

    #sudo chown -R wuj /usr/local/lib
    

    然后重新安装即可 brew install mysql

    2、启动mysql服务

    #mysql.server start
    

    3、设置密码

    通过brew安装后默认密码为空

    执行以下命令设置密码

    #mysql_secure_installation
    
    Securing the MySQL server deployment.
    
    Connecting to MySQL using a blank password.
    
    VALIDATE PASSWORD COMPONENT can be used to test passwords
    and improve security. It checks the strength of password
    and allows the users to set only those passwords which are
    secure enough. Would you like to setup VALIDATE PASSWORD component?
    
    Press y|Y for Yes, any other key for No: y
    
    There are three levels of password validation policy:
    
    LOW    Length >= 8
    MEDIUM Length >= 8, numeric, mixed case, and special characters
    STRONG Length >= 8, numeric, mixed case, special characters and dictionary                  file
    
    Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG:
    

    之后输入密码强度 0、1、2选择一个

    因为手误我选择了1,但在后面设置密码时无法设置简单密码

    Estimated strength of the password: 25 
    Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y
     ... Failed! Error: Your password does not satisfy the current policy requirements
    

    解决
    更改密码强度为 LOW

    先登录mysql

    #mysql -uroot
    

    设置validate_password_policy为0(表示等级low)

    set global validate_password_policy=0;
    

    执行会报错

    ERROR 1193 (HY000): Unknown system variable 'validate_password_policy'
    

    原因是 MySQL 5.7和MySQL 8.0版本变量名不同
    validate_password_policy是在版本 MySQL 5.7中 存在 ,而 MySQL 8.0不存在

    解决,执行以下命令查看密码验证插件

    SHOW VARIABLES LIKE 'validate_password%';
    
    Variable_name                        | Value  |
    +--------------------------------------+--------+
    | validate_password.check_user_name    | ON     |
    | validate_password.dictionary_file    |        |
    | validate_password.length             | 8      |
    | validate_password.mixed_case_count   | 1      |
    | validate_password.number_count       | 1      |
    | validate_password.policy             | MEDIUM |
    | validate_password.special_char_count | 1
    

    可以看到在mysql8.0中 变量名 为 validate_password.policy

    好了,修改变量名后执行设置成功

    set global validate_password.policy=0;
    

    除此之外 ,还需设置密码长度(默认是长度8位以上)

    set global validate_password.length=4;
    

    解决以上问题后再次执行以下命令,设置密码即可

    #mysql_secure_installation
    

    4、mysql登录验证

    #mysql -uroot -p
    

    显示数据库

    #show databases;
    

    另:

    在php连接数据库时报错,无法连接到数据库

    The server requested authentication method unknown to the client
    

    发现是因为mysql8.0版本的问题
    打开mysql数据库 -》用户-》编辑root用户修改
    修改插件 caching_sha2_password为 mysql_native_password即可

    参考

    https://blog.csdn.net/maxsky/article/details/51171474
    https://blog.csdn.net/HaHa_Sir/article/details/80552663

  • 相关阅读:
    JQuery扩展方法
    RabbitMQ消息机制广播分发
    RabbitMQ消息机制单人分发
    对函数的参数求和
    ajax jsonp
    绑定函数bind()
    this 指向
    DOM兼容
    命名空间 namespace
    开始看编写高质量的代码
  • 原文地址:https://www.cnblogs.com/fozero/p/9862938.html
Copyright © 2011-2022 走看看