『MySQL入門は簡単』学習ノート(15)の第15章MySQLユーザー管理(キーワード:MySQL/ユーザー管理/権限表/一般ユーザー/rootユーザー)


第15章MySQLユーザー管理
MySQLユーザーには、主に一般ユーザーとrootユーザーが含まれています.
    root        ,       ,  :
            ;
            ;
                 、   。
                       。

15.1権限表
      MySQL ,         mysql    。
    mysql             。
          ,     :
        user ;
        db ;
        host ;
        ,  :
        tables_priv ;
        columns_priv ;
        proc_priv 。

15.1.1 userテーブル
    user  MySQL          。
    DESC      user      。
    user  39   ,      4 :
           ;
           ;
           ;
             。

1.ユーザー列userテーブルのユーザー列は次のとおりです.
    Host,     ;
    User,     ;
    Password,    。
    。

2.権限列
    user       Select_priv、Insert_priv  priv     。
                。  :
            、         ,       ;
            、    、           ,          。
        。

3.安全列
    user       4   ,   :
        ssl_type
        ssl_cipher
        x509_issuer
        x509_subject
  • リソース制御列
    user  4       :
        max_questions,                ;
        max_updates,                ;
        max_connections,             ;
        max_user_connections,                。
                 0,      。
    
  • 15.1.2 dbテーブルとhostテーブル
    dbテーブルとhostテーブルもMySQLで非常に重要なパーミッションテーブルです.
        db                  。
        db     ,host     。
        DESC       2       。
    

    dbテーブルとhostテーブルのフィールドは、ユーザー列、権限列の2つに大きく分けることができます.1.ユーザー列
        db      3   ,   :
            Host,     ;
            Db,      ;
            User,   。
        host  db    。  db     Host    ,    host     。 host     ,  db           。
    

    2.権限列
        db  host         ,  db      Create_routine_priv   Alter_routine_priv  。                         。
            。
    

    15.1.3 tables_privテーブルとcolumns_privテーブル
        tables_priv             。
        colums_priv               。
        DESC               。
    

    詳しくは本を参照.
    15.1.4 procs_privテーブル
        procs_priv                   。
        DESC      procs_priv      。
    

    15.2口座管理
    次の内容が含まれます.
             MySQL   ;
            ;
            ;
            ;
             。
    

    15.2.1 MySQLサーバへのログインと終了
    15.2.2新規一般ユーザー
     MySQL :
        CREATE USER          ;
        INSERT     mysql.user      ;
        GRANT        。
    

    詳しくは本を参照.
    15.2.3一般ユーザーの削除
         MySQL ,           :
              DROP USER  ;
              DELETE  。
    

    詳しくは本を参照.
    15.2.4 rootユーザーが自分のパスワードを変更する
  • mysqladminコマンドを使用してrootユーザーのパスワード構文を変更します:
    mysqladmin -u username -p password "new_password";
    
  • mysqlデータベースの下のuserテーブルを変更するにはUPDATE文を使用します.構文:
    UPDATE mysql.user SET Password=PASSWORD("new_password")
            WHERE User="root" AND Host="locahost";
    
    UPDATE文を実行した後、FLUSH PRIVILEGES文を実行して権限をロードする必要があります.
  • SET文を使用してrootユーザのパスワード
        SET PASSWORD=PASSWORD("new_password");
    
  • を変更する.
    15.2.5 rootユーザー一般ユーザーパスワードの変更
    rootユーザーがサーバにログインした後、通常のユーザーパスワードを変更する方法は以下のとおりです.
          SET  ;
          UPDATE  ,  user ;
        GRANT  。
    

    15.2.6一般ユーザーのパスワード変更
    構文:
        SET PASSWORD=PASSWORD('new_password');
    

    15.2.7 rootユーザーパスワード紛失の解決方法
    手順:1.Linuxでは、
      mysqld_safe   MySQL  :
        mysqld_safe --skip-grant-tables user=mysql
         /etc/init.d/mysql   MySQL  :
        /etc/init.d/mysql start --mysqld --skip-grant-tables
    

    2.rootユーザーにログインし、新しいパスワードを設定して上記のようにMySQLサービスを起動した後、パスワードを入力せずにrootユーザーにログインすることができます.ログイン後、UPDATE文を使用してパスワードを変更できます.mysql-u root(親測定で"Access denied")3.ユーザーは、FLUSH PRIVILEGES文で権限テーブルをロードする必要があります.権限テーブルをロードすると、新しいパスワードが有効になります.またMySQLサーバは権限認証を開始します.MySQLデータベースにログインするには、ユーザー名とパスワードを入力する必要があります.
    15.3権限管理
    15.3.1 MySQLの各種権限
    15.3.2授権
    MySQLでは、GRANTキーを使用してユーザーに権限を設定します.MySQLでは、GRANT文を実行するには、GRANT権限を持つユーザーが必要です.構文:

    15.3.3権限の回収
    権限の回収は、ユーザーの一部の権限を取り消すことです.MySQLでは、REVOKEキーを使用してユーザーに権限を設定できます.構文:

    15.3.4表示権限
    MySQLでは、
            SELECT     user        ;
              SHOW GRANTS       ;
    

    詳しくは本を参照.
    15.6よくある質問と回答
  • mysqladminコマンドは普通のユーザーのパスワードを変更できませんか?
  • 新しく作成したMySQLユーザーは他のマシンでMySQLデータベースにログインできませんか?

  • 参考文献:1.『MySQL入門は簡単です』.