MySQL如何使用授權命令grant_Mysql

來源:腳本之家  責任編輯:小易  

首先以root身份登錄到MySQL服務器中。mysql-u root-p當驗證提示出現的時候,輸入MySQL的root帳號的密碼。創建一個MySQL用戶使用如下命令創建一個用戶名和密碼分別為"myuser"和"mypassword"的用戶。mysql>CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';一旦用戶被創建后,包括加密的密碼、權限和資源限制在內的所有帳號細節都會被存儲在一個名為user的表中,這個表則存在于mysql這個特殊的數據庫里。運行下列命令,驗證帳號是否創建成功mysql>SELECT host,user,password FROM mysql.user WHERE user='myuser';賦予MySQL用戶權限一個新建的MySQL用戶沒有任何訪問權限,這就意味著你不能在MySQL數據庫中進行任何操作。你得賦予用戶必要的權限。以下是一些可用的權限:ALL:所有可用的權限CREATE:創建庫、表和索引LOCK_TABLES:鎖定表ALTER:修改表DELETE:刪除表INSERT:插入表或列SELECT:檢索表或列的數據CREATE_VIEW:創建視圖SHOW_DATABASES:列出數據庫DROP:刪除庫、表和視圖運行以下命令賦予"myuser"用戶特定權限。mysql>GRANT<privileges>ON<database>.<table>TO 'myuser'@'localhost';以上命令中,代表著用逗號分隔的權限列表。如果你想要將權限賦予任意數據庫(或表),那么使用星號(*)來代替數據庫(或表)的名字。例如,為所有數據庫/表賦予 CREATE 和 INSERT 權限:mysql>GRANT CREATE,INSERT ON*.*TO 'myuser'@'localhost';驗證給用戶賦予的全權限:mysql>SHOW GRANTS FOR 'myuser'@'localhost';將全部的權限賦予所有數據庫/表:mysql>GRANT ALL ON*.*TO 'myuser'@'localhost';你也可以將用戶現有的權限刪除。使用以下命令廢除"myuser"帳號的現有權限:mysql>REVOKE<privileges>ON<database>.<table>FROM 'myuser'@'localhost';為用戶添加資源限制在MySQL中,你可以為單獨的用戶設置MySQL的資源使用限制?捎玫馁Y源限制如下:MAX_QUERIES_PER_HOUR:允許的每小時最大請求數量MAX_UPDATES_PER_HOUR:允許的每小時最大更新數量MAX_CONNECTIONS_PER_HOUR:允許的每小時最大連接(LCTT譯注:其與 MySQL全局變量:max_user_connections 共同決定用戶到數據庫的同時連接數量)數量MAX_USER_CONNECTIONS:對服務器的同時連接量使用以下命令為"myuser"帳號增7a686964616fe4b893e5b19e31333361306439加一個資源限制:mysql>GRANT USAGE ON<database>.<table>TO 'myuser'@'localhost' WITH;在中你可以指定多個使用空格分隔開的資源限制。例如,增加 MAXQUERIESPERHOUR 和 MAXCONNECTIONSPERHOUR 資源限制:mysql>GRANT USAGE ON*.*TO 'myuser'@'localhost' WITH MAX_QUERIES_PER_HOUR 30 MAX_CONNECTIONS_PER_HOUR 6;驗證用戶的資源限制:mysql>SHOW GRANTS FOR 'myuser'@'localhost;創建和設置一個MySQL用戶最后的一個重要步驟:mysql>FLUSH PRIVILEGES;如此一來更改便生效了,F在MySQL用戶帳號就可以使用了www.anxorj.tw防采集請勿采集本網。

本文實例,運行于 MySQL 5.0 及以上版本。

1、use mysql 2、SELECT*FROM users 就可以看到所有的使用者權限 有關db的數據是記錄在Db(大小寫要注意)這個數據表中,所以只要呼叫出Db的資料 SELECT*FROM Db 就可以看到你要的答案;蛘呖梢杂

MySQL 賦予用戶權限命令的簡單格式可概括為:

show databases;查看所有數據來庫名稱源zhidao use database;切換數據庫 show tables;查看數據庫下表名稱 show columns from tables;查看表中的字段名稱

grant 權限 on 數據庫對象 to 用戶

使用:mysql-u root-p 進入 mysql 命令號以后,如果想退出,可以使用:quit 命令,如下: mysql-u root-p quit;擴展資料: 數據庫常用操作: 登錄到mysql中,然后在mysql的提示符下運行下列命令,每個

一、grant 普通數據用戶,查詢、插入、更新、刪除 數據庫中所有表數據的權利。

1、連接到本機上的MYSQL命令行 首先打開DOS窗口,然后進入目錄mysql\\bin,再鍵入命令mysql-u root-p,回車后提示你輸密碼.注意用戶名前可以有空格也可以沒有空格,但是如果-p后帶有用戶密碼,

grant select on testdb.* to [email protected]'%'grant insert on testdb.* to [email protected]'%'grant update on testdb.* to [email protected]'%'grant delete on testdb.* to [email protected]'%'

第一步:啟動mysql服務,可以通過“net start myql”命令實現;第二步:在命令行輸入:mysql-u 用戶名-p;回車;第三步:此時會提示輸入密碼,輸入密碼后回車,即可完成登錄mysql操作。

或者,用一條 MySQL 命令來替代:

grant select, insert, update, delete on testdb.* to [email protected]'%'

二、grant 數據庫開發人員,創建表、索引、視圖、存儲過程、函數。。。等權限。

grant 創建、修改、刪除 MySQL 數據表結構權限。

grant create on testdb.* to [email protected]'192.168.0.%';grant alter on testdb.* to [email protected]'192.168.0.%';grant drop on testdb.* to [email protected]'192.168.0.%';

grant 操作 MySQL 外鍵權限。

grant references on testdb.* to [email protected]'192.168.0.%';

grant 操作 MySQL 臨時表權限。

grant create temporary tables on testdb.* to [email protected]'192.168.0.%';

grant 操作 MySQL 索引權限。

grant index on testdb.* to [email protected]'192.168.0.%';

grant 操作 MySQL 視圖、查看視圖源代碼 權限。

grant create view on testdb.* to [email protected]'192.168.0.%';grant show view on testdb.* to [email protected]'192.168.0.%';

grant 操作 MySQL 存儲過程、函數 權限。

grant create routine on testdb.* to [email protected]'192.168.0.%'; -- now, can show procedure statusgrant alter routine on testdb.* to [email protected]'192.168.0.%'; -- now, you can drop a proceduregrant execute on testdb.* to [email protected]'192.168.0.%';

三、grant 普通 DBA 管理某個 MySQL 數據庫的權限。

grant all privileges on testdb to [email protected]'localhost'

其中,關鍵字 “privileges” 可以省略。

四、grant 高級 DBA 管理 MySQL 中所有數據庫的權限。

grant all on *.* to [email protected]'localhost'

五、MySQL grant 權限,分別可以作用在多個層次上。

1. grant 作用在整個 MySQL 服務器上:

grant select on *.* to [email protected]; -- dba 可以查詢 MySQL 中所有數據庫中的表。grant all on *.* to [email protected]; -- dba 可以管理 MySQL 中的所有數據庫

2. grant 作用在單個數據庫上:

grant select on testdb.* to [email protected]; -- dba 可以查詢 testdb 中的表。

3. grant 作用在單個數據表上:

grant select, insert, update, delete on testdb.orders to [email protected];

這里在給一個用戶授權多張表時,可以多次執行以上語句。例如:

grant select(user_id,username) on smp.users to [email protected]'%' identified by '123345';grant select on smp.mo_sms to [email protected]'%' identified by '123345';

4. grant 作用在表中的列上:

grant select(id, se, rank) on testdb.apache_log to [email protected];

5. grant 作用在存儲過程、函數上:

grant execute on procedure testdb.pr_add to 'dba'@'localhost'grant execute on function testdb.fn_add to 'dba'@'localhost'

六、查看 MySQL 用戶權限

查看當前用戶(自己)權限:

show grants;

查看其他 MySQL 用戶權限:

show grants for [email protected];

七、撤銷已經賦予給 MySQL 用戶權限的權限。

revoke 跟 grant 的語法差不多,只需要把關鍵字 “to” 換成 “from” 即可:

grant all on *.* to [email protected];revoke all on *.* from [email protected];

八、MySQL grant、revoke 用戶權限注意事項

1. grant, revoke 用戶權限后,該用戶只有重新連接 MySQL 數據庫,權限才能生效。

2. 如果想讓授權的用戶,也可以將這些權限 grant 給其他用戶,需要選項 “grant option“

grant select on testdb.* to [email protected] with grant option;

這個特性一般用不到。實際中,數據庫權限最好由 DBA 來統一管理。

以上就是MySQL如何使用授權命令grant的詳細內容,更多關于MySQL 授權命令grant的資料請關注真格學網其它相關文章!

慢慢看吧mysql中可以給你一個用戶授予如select,insert,update,delete等其中的一個或者多個權限,主要使用grant命令,用法格式為:grant 權限 on 數據庫對象 to 用戶一、grant 普通數據用戶,查詢、插入、更新、刪除 數據庫中所有表數據的權利。grant select on testdb.*to [email protected]’%’grant insert on testdb.*to [email protected]’%’grant update on testdb.*to [email protected]’%’grant delete on testdb.*to [email protected]’%’或者,用一條 mysql 命令來替代:grant select,insert,update,delete on testdb.*to [email protected]’%’二、grant 數據庫開發人員,創建表、索引、視圖、存儲過程、函數。等權限。grant 創建、修改、刪除 mysql 數據表結構權限。grant create on testdb.*to [email protected]’192.168.0.%’;grant alter on testdb.*to [email protected]’192.168.0.%’;grant drop on testdb.*to [email protected]’192.168.0.%’;grant 操作 mysql 外鍵權限。grant references on testdb.*to [email protected]’192.168.0.%’;grant 操作 mysql 臨時表權限。grant create temporary tables on testdb.*to [email protected]’192.168.0.%’;grant 操作 mysql 索引權限。grant index on testdb.*to [email protected]’192.168.0.%’;grant 操作 mysql 視圖、查看視圖源代碼 權限。grant create view on testdb.*to [email protected]’192.168.0.%’;grant show view on testdb.*to [email protected]’192.168.0.%’;grant 操作 mysql 存儲過程、函數 權限。grant create routine on testdb.*to [email protected]’192.168.0.%’;now,can show procedure statusgrant alter routine on testdb.*to [email protected]’192.168.0.%’;now,you can drop a proceduregrant execute on testdb.*to [email protected]’192.168.0.%’;三、grant 普通 dba 管理某個 mysql 數據庫的權限。grant all privileges on testdb to [email protected]’localhost’其中,關鍵字“privileges”可以省略。四、grant 高級 dba 管理 mysql 中所有數據庫的權限。grant all on*.*to [email protected]’localhost’五、mysql grant 權限,分別可以作用在多個層次上。1.grant 作用在整個 mysql 服務器上:grant select on*.*to [email protected];dba 可以查詢 mysql 中所有數據庫中的表。grant all on*.*to [email protected];dba 可以管理 mysql 中的所有數據庫2.grant 作用在單個數據庫上:grant select on testdb.*to [email protected];dba 可以查詢 testdb 中的表。3.grant 作用在單個數據表上:grant select,insert,update,delete on testdb.orders to [email protected];4.grant 作用在表中的列上:grant select(id,se,rank)on testdb.apache_log to [email protected];5.grant 作用在存儲過程、函數上:grant execute on procedure testdb.pr_add to’dba’@’localhost’grant execute on function testdb.fn_add to’dba’@’localhost’六、查看 mysql 用戶權限查看當前用戶(自己)權限:show grants;查看其他 mysql 用戶權限:show grants for [email protected];七、撤銷已經賦予給 mysql 用戶權限的權限。revoke 跟 grant 的語法差不多,只需要把關鍵字“to”換成“from”即可:grant all on*.*to [email protected];revoke all on*.*from [email protected];八、mysql grant、revoke 用戶權限注意事項1.grant,revoke 用戶權限后,該用戶只有重新連接 mysql 數據庫,權限才能生效。2.如果想讓授權的用戶,也可以將這些權限 grant 給其他用戶,需要選項“grant optiongrant select on testdb.*to [email protected] with grant option;這個特性一般用不到。實際中,數據庫權限最好由 dba 來統一管理。注意:修改完權限以后 一定要刷新服務,或者重啟服務內容來自www.anxorj.tw請勿采集。


  • 本文相關:
  • mysql數據庫mysql: [error] unknown option ''--skip-grant-tables''
  • mysql server is running with the --skip-grant-tables option
  • 淺談mysql中授權(grant)和撤銷授權(revoke)用法詳解
  • 使用skip-grant-tables 解決 mysql root密碼丟失
  • mysql權限管理grant命令使筆記
  • mysql的grant命令詳解
  • mysql grants小記
  • mysql中刪除重復數據的簡單方法
  • mysql數據庫查看數據表占用空間大小和記錄數的方法
  • mysql 的啟動和連接方式實例分析
  • 淺談mysql、sqlserver、oracle三大數據庫的區別
  • 日常收集整理常見的mysql sql技巧
  • mysql存儲過程基礎之遍歷多表記錄后插入第三方表中詳解
  • mysql查詢慢的原因和解決方案
  • win10下mysql 8.0.15 安裝配置方法圖文教程
  • 淺析mysql join語法以及性能優化
  • win7下mysql5.7.17安裝配置方法圖文教程
  • MySQL如何授權一個自己的創建的用戶比如daitest創建新數據庫的權利?求命令
  • 如何通過命令行創建和設置一個MySQL用戶
  • mysql怎么授予創建數據庫的權限
  • 怎么往mysql表里添加數據
  • mysql 如何查看該數據庫用戶具有哪些權限?
  • mysql 查看所有數據庫名命令
  • 怎么退出mysql命令行
  • 如何使用mysql命令連接mysql數據庫
  • 如何通過命令提示符進入mysql
  • mysql怎么給用戶授權圖解
  • 網站首頁網頁制作腳本下載服務器操作系統網站運營平面設計媒體動畫電腦基礎硬件教程網絡安全mssqlmysqlmariadboracledb2mssql2008mssql2005sqlitepostgresqlmongodbredisaccess數據庫文摘數據庫其它首頁mysql數據庫mysql: [error] unknown option ""--skip-grant-tables""mysql server is running with the --skip-grant-tables option淺談mysql中授權(grant)和撤銷授權(revoke)用法詳解使用skip-grant-tables 解決 mysql root密碼丟失mysql權限管理grant命令使筆記mysql的grant命令詳解mysql grants小記mysql中刪除重復數據的簡單方法mysql數據庫查看數據表占用空間大小和記錄數的方法mysql 的啟動和連接方式實例分析淺談mysql、sqlserver、oracle三大數據庫的區別日常收集整理常見的mysql sql技巧mysql存儲過程基礎之遍歷多表記錄后插入第三方表中詳解mysql查詢慢的原因和解決方案win10下mysql 8.0.15 安裝配置方法圖文教程淺析mysql join語法以及性能優化win7下mysql5.7.17安裝配置方法圖文教程mysql安裝圖解 mysql圖文安裝教程can""""t connect to mysql servwindows下mysql5.6版本安裝及配置mysql字符串截取函數substring的mysql創建用戶與授權方法mysql提示:the server quit withmysql——修改root密碼的4種方法mysql日期數據類型、時間類型使用mysql update語句的用法詳解mysql 的case when 語句使用說明mysql利用group_concat()合并多行數據到一mysql5.7以上版本配置my.ini的詳細步驟在cmd中操作mysql數據庫出現中文亂碼解決深入sqlite基本操作的總結詳解mysql中的跨庫關聯查詢方法mysql 視圖 第1349號錯誤解決方法不重啟mysql修改root密碼的方法mysql索引使用技巧及注意事項簡單分析mysql中的primary key功能linux采用binary方式安裝mysql
    免責聲明 - 關于我們 - 聯系我們 - 廣告聯系 - 友情鏈接 - 幫助中心 - 頻道導航
    Copyright © 2017 www.anxorj.tw All Rights Reserved
    陕西快乐10分下载