问题:Ignoring query to other database

    1. mysql> show databases;
    2. Ignoring query to other database
    3. mysql> show tables;
    4. Ignoring query to other database

    原因:折腾了半天才发现原来是在连接mysql时没有”-u”参数导致的

    问题:Starting mysqld daemon(强制关闭,无法启动)

    [wzhwho@local~]#service mysqld start
    Starting mysqld daemon  [FAILED]
    

    原因:
    在mysql安装目录里有一个mysql.sock文件,这个文件在mysql启动时创建的,mysql关闭时删除。那如果是非正常关机,mysql就没有机会去删除之个文件。当这个文件还存在时,mysql就启动不了,提示上面的错误。
    解决方法,就是在mysql启动前,判断如果mysql.sock存在就删除掉。删除后,问题解决。
    mysql启动系统日志,默认路径是/var/log/mysqld.log

    问题:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '1';
    ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
    mysql>
    

    原因:因为MySQL有密码设置的规范,具体是与validate_password_policy的值有关
    MySQL完整的初始密码规则可以通过如下命令查看

    mysql> SHOW VARIABLES LIKE 'validate_password%';
    +--------------------------------------+--------+
    | Variable_name                        | Value  |
    +--------------------------------------+--------+
    | validate_password_check_user_name    | OFF    |
    | 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      |
    +--------------------------------------+--------+
    7 rows in set (0.01 sec)
    
    mysql>
    

    密码的长度是由validate_password_length决定的,而validate_password_length的计算公式是:

    validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)
    

    密码规则改

    mysql> set global validate_password_policy=0;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> set global validate_password_length=1;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql>