1. 程式人生 > >mysql5.7 使用者、資料庫、許可權常用操作

mysql5.7 使用者、資料庫、許可權常用操作

mysql 使用者、資料庫、許可權常用操作

系統資訊

  • 作業系統: macOS High Sierra 10.13.6
  • mysql版本: MySQL Community Server 5.7.18

登入

  • 使用root 使用者登入mysql
    • mysql -uroot -p123456

使用者

  • 檢視使用者
    • 通過檢視系統表中的user表檢視
    • select t.host,t.user,t.account_locked from mysql.user t;
  • 建立使用者
    • create user ‘dream_flower’@’%’ identified by ‘dream_flower’;
  • 修改使用者名稱
    • update mysql.user set authentication_string = password(‘dream_flower’), password_expired = ‘N’, password_last_changed = now() where user = ‘dream_flower’;
  • 刪除使用者
    • drop user ‘dream_flower’@’%’;

資料庫

  • 檢視資料庫
    • show databases;
  • 切換當前資料庫
    • use mysql;
  • 建立資料庫
    • create database dream_flower DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    • COLLATE表示校對方式
      • utf8_general_ci 不區分大小寫,字元方式儲存
      • utf8_general_cs 區分大小寫,字元方式儲存(該版本不能使用)
      • utf8_bin 區分大小,將字串每個字元使用二進位制儲存,且同時可以儲存二進位制內容
  • 刪除資料庫
    • drop database dream_flower;

許可權

許可權級別

  • 全域性層級許可權
  • 資料庫層級許可權
  • 表層級別許可權
  • 列層級別許可權
  • 子程式層級許可權

許可權型別

mysql提供的許可權型別見官方文件

授予操作

  • 檢視許可權
    • 許可權儲存在user, db, tables_priv, columns_priv, and procs_priv表中,可以通過檢視對應表檢視
    • 檢視許可權 show grants for dream_flower;
    • select * from mysql.user where user=’dream_flower’\G;
    • select * from mysql.db where use=’dream_flower’;
    • select * from mysql.tables_priv where use=’dream_flower’;
    • select * from mysql.columns_priv where use=’dream_flower’;
    • select * from mysql.procs_priv where use=’dream_flower’;
  • 授予許可權
    • 格式
      • grant 許可權 on 資料庫.表 to ‘使用者’@’授予訪問IP’ identified by 密碼;
  • 回收許可權
    • 格式
      • revoke 許可權 on 資料庫.表 from ‘使用者’@’授予訪問IP’;