国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySQL數(shù)據(jù)庫中使用GRANT語句增添新用戶

2024-07-24 12:58:04
字體:
供稿:網(wǎng)友
這篇論壇文章(賽迪網(wǎng)技術(shù)社區(qū))詳細(xì)的介紹了在MySQL中使用GRANT語句增添新用戶的具體步驟,更多內(nèi)容請參考下文……

下面的例子顯示如何使用MySQL客戶安裝新用戶。這些例子假定權(quán)限已缺省被安裝。這意味著為了改變,你必須在MySQL正在運(yùn)行同一臺機(jī)器上,你必須作為MySQL root用戶連接,并且root用戶必須對MySQL數(shù)據(jù)庫有insert權(quán)限和reload管理權(quán)限。另外,如果你改變了root用戶口令,你必須如下的MySQL命令指定它。

你可以通過發(fā)出GRANT語句增加新用戶:

shell> mysql --user=root mysql mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%" IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost; mysql> GRANT USAGE ON *.* TO dummy@localhost;

這些GRANT語句安裝3個(gè)新用戶:

monty:可以從任何地方連接服務(wù)器的一個(gè)完全的超級用戶,但是必須使用一個(gè)口令('something'做這個(gè)。注意,我們必須對 monty@localhost和monty@"%"發(fā)出GRANT語句。如果我們增加localhost條目,對localhost的匿名用戶條目在我 們從本地主機(jī)連接接時(shí)由mysql_install_db創(chuàng)建的條目將優(yōu)先考慮,因?yàn)樗懈囟ǖ腍ost字段值,所以以user表排列順序看更早到來。

admin:可以從localhost沒有一個(gè)口令進(jìn)行連接并且被授予reload和process管理權(quán)限的用戶。這允許用戶執(zhí)行mysqladmin reload、mysqladmin refresh和mysqladmin flush-*命令,還有mysqladmin processlist。沒有授予數(shù)據(jù)庫有關(guān)的權(quán)限。他們能在以后通過發(fā)出另一個(gè)GRANT語句授權(quán)。

dummy:可以不用一個(gè)口令連接的一個(gè)用戶,但是只能從本地主機(jī)。全局權(quán)限被設(shè)置為'N'--USAGE權(quán)限類型允許你無需權(quán)限就可設(shè)置一個(gè)用戶。它假定你將在以后授予數(shù)據(jù)庫相關(guān)的權(quán)限。

你也可以直接通過發(fā)出INSERT語句增加同樣的用戶存取信息,然后告訴服務(wù)器再次裝入授權(quán)表:

shell> mysql --user=root mysql mysql> INSERT INTO user VALUES('localhost','monty',PASSWord('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y') mysql> INSERT INTO user VALUES('%','monty',PASSWORD('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y') mysql> INSERT INTO user SET Host='localhost',User='admin', Reload_priv='Y', Process_priv='Y'; mysql> INSERT INTO user (Host,User,Password) VALUES('localhost','dummy',''); mysql> FLUSH PRIVILEGES;

取決于你的MySQL版本,對上述,你可能必須使用一個(gè)不同數(shù)目'Y'值(在3.22.11以前的版本有更少的權(quán)限列)。對admin用戶,只用在3.22.11開始的版本具有的更加可讀的INSERT擴(kuò)充的語法。

注意,為了設(shè)置一個(gè)超級用戶,你只需創(chuàng)造一個(gè)user表?xiàng)l目,其權(quán)限字段設(shè)為'Y'。不需要db或host表的條目。

在user表中的權(quán)限列不是由最后一個(gè)INSERT語句明確設(shè)置的(對dummy用戶),因此那些列被賦予缺省值'N'。這是GRANT USAGE做的同樣的事情。

下列例子增加一個(gè)用戶custom,他能從主機(jī)localhost、server.domain和whitehouse.gov連接。他只想要從 localhost存取bankaccount數(shù)據(jù)庫,從whitehouse.gov存取expenses數(shù)據(jù)庫和從所有3臺主機(jī)存取customer 數(shù)據(jù)庫。他想要從所有3臺主機(jī)上使用口令stupid。

為了使用GRANT語句設(shè)置個(gè)用戶的權(quán)限,運(yùn)行這些命令:

shell> mysql --user=root mysql mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON bankaccount.* TO custom@localhost IDENTIFIED BY 'stupid'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON expenses.* TO custom@whitehouse.gov IDENTIFIED BY 'stupid'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON customer.* TO custom@'%' IDENTIFIED BY 'stupid';

通過直接修改授權(quán)表設(shè)置用戶權(quán)限,運(yùn)行這些命令(注意,在結(jié)束時(shí)FLUSH PRIVILEGES):

shell> mysql --user=root mysql mysql> INSERT INTO user (Host,User,Password) VALUES('localhost','custom',PASSWORD('stupid')); mysql> INSERT INTO user (Host,User,Password) VALUES('server.domain','custom',PASSWORD('stupid')); mysql> INSERT INTO user (Host,User,Password) VALUES('whitehouse.gov','custom',PASSWORD('stupid')); mysql> INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv) VALUES ('localhost','bankaccount','custom','Y','Y','Y','Y','Y','Y'); mysql> INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv) VALUES ('whitehouse.gov','expenses','custom','Y','Y','Y','Y','Y','Y'); mysql> INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv) VALUES('%','customer','custom','Y','Y','Y','Y','Y','Y'); mysql> FLUSH PRIVILEGES;


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 苗栗市| 怀安县| 大石桥市| 镇原县| 天祝| 夹江县| 恩平市| 阜城县| 龙泉市| 额敏县| 五大连池市| 东台市| 安新县| 河东区| 梅河口市| 枣强县| 张家界市| 长治县| 昭通市| 望谟县| 类乌齐县| 永济市| 民勤县| 阳西县| 镇宁| 石城县| 呼和浩特市| 金华市| 星子县| 梓潼县| 巩义市| 广宁县| 延川县| 丽江市| 进贤县| 交口县| 广南县| 通州区| 武隆县| 河源市| 和平县|