• mysql主从搭建之诡异事件


    今天在搭建主从后出现了主库system账号丢失INSERT权限的情况,记录如下

    主库:
    system账号权限同root权限,并且mysql库已经删除

    从库:
    mysql库存在,无system账号

    主从同步搭建完成后,start slave开启同步,返回主库测试,发现可以建表,但是不能插入数据,查看system用户权限如下
    mysql> select * from user where user='system'G;
    *************************** 1. row ***************************
    Host: localhost
    User: system
    Password: *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9
    Select_priv: Y
    Insert_priv: N
    Update_priv: Y
    Delete_priv: Y
    Create_priv: Y
    Drop_priv: Y
    Reload_priv: Y
    Shutdown_priv: Y
    Process_priv: Y
    File_priv: Y
    Grant_priv: Y
    References_priv: Y
    Index_priv: Y
    Alter_priv: Y
    Show_db_priv: Y
    Super_priv: Y
    Create_tmp_table_priv: Y
    Lock_tables_priv: Y
    Execute_priv: Y
    Repl_slave_priv: Y
    Repl_client_priv: Y
    Create_view_priv: Y
    Show_view_priv: Y
    Create_routine_priv: Y
    Alter_routine_priv: Y
    Create_user_priv: Y
    Event_priv: Y
    Trigger_priv: Y
    Create_tablespace_priv: Y
    ssl_type:
    ssl_cipher:
    x509_issuer:
    x509_subject:
    max_questions: 0
    max_updates: 0
    max_connections: 0
    max_user_connections: 0
    plugin: mysql_native_password
    authentication_string:
    password_expired: N
    1 row in set (0.00 sec)

    可以看到system具有更新的权限,遂做如下处理:
    mysql> update user set Insert_priv='Y' where user='system';
    Query OK, 1 row affected (0.00 sec)
    Rows matched: 1 Changed: 1 Warnings: 0

    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)

    保险起见,重启mysql
    [root@HadoopDEV1 3306]# ./mysql stop
    Mysqldstoping......
    [1]+ 完成 mysqld_safe --defaults-file=/data/3306/my.cnf --skip-grant-tables 2>&1 > /dev/null
    [root@HadoopDEV1 3306]# ./mysql start
    Mysqldstarting......
    [root@HadoopDEV1 3306]# mysql -usystem -p -S /data/3306/data/mysql.sock
    Enter password:
    Welcome to the MySQL monitor. Commands end with ; or g.
    Your MySQL connection id is 1
    Server version: 5.6.15-log MySQL Community Server (GPL)

    Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.

    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

    再次查看system用户权限
    mysql> select * from mysql.user where user='system'G;
    *************************** 1. row ***************************
    Host: localhost
    User: system
    Password: *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9
    Select_priv: Y
    Insert_priv: Y
    Update_priv: Y
    Delete_priv: Y
    Create_priv: Y
    Drop_priv: Y
    Reload_priv: Y
    Shutdown_priv: Y
    Process_priv: Y
    File_priv: Y
    Grant_priv: Y
    References_priv: Y
    Index_priv: Y
    Alter_priv: Y
    Show_db_priv: Y
    Super_priv: Y
    Create_tmp_table_priv: Y
    Lock_tables_priv: Y
    Execute_priv: Y
    Repl_slave_priv: Y
    Repl_client_priv: Y
    Create_view_priv: Y
    Show_view_priv: Y
    Create_routine_priv: Y
    Alter_routine_priv: Y
    Create_user_priv: Y
    Event_priv: Y
    Trigger_priv: Y
    Create_tablespace_priv: Y
    ssl_type:
    ssl_cipher:
    x509_issuer:
    x509_subject:
    max_questions: 0
    max_updates: 0
    max_connections: 0
    max_user_connections: 0
    plugin: mysql_native_password
    authentication_string:
    password_expired: N
    1 row in set (0.00 sec)

    插入数据测试:
    mysql> select * from t;
    Empty set (0.00 sec)

    mysql> insert into t values(2);
    Query OK, 1 row affected (0.01 sec)

    mysql> select * from t;
    +------+
    | id |
    +------+
    | 2 |
    +------+
    1 row in set (0.00 sec)

    测试插入正常,对于具体原因尚不得知

  • 相关阅读:
    使用命令xrandr设置当前系统的显示分辨率及显示的旋转脚本
    CODEFORCE 246 Div.2 B题
    Android数据的四种存储方式之SQLite数据库
    C语言默认參数值的实现
    Android开发环境搭建
    也谈OpenFlow, SDN, NFV
    解决设置redmineblacklog的按钮无效问题
    长方体的研究
    表面张力与浮力
    表面张力与浮力
  • 原文地址:https://www.cnblogs.com/xuchenliang/p/7068236.html
Copyright © 2020-2023  润新知