MySQL命令行能否實(shí)現(xiàn)新建用戶呢?答案無(wú)疑是肯定的。而且在使用使用MySQL命令行新建用戶后,還可以為用戶授予權(quán)限。
成都創(chuàng)新互聯(lián)一直通過(guò)網(wǎng)站建設(shè)和網(wǎng)站營(yíng)銷幫助企業(yè)獲得更多客戶資源。 以"深度挖掘,量身打造,注重實(shí)效"的一站式服務(wù),以成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、移動(dòng)互聯(lián)產(chǎn)品、營(yíng)銷型網(wǎng)站服務(wù)為核心業(yè)務(wù)。10年網(wǎng)站制作的經(jīng)驗(yàn),使用新網(wǎng)站建設(shè)技術(shù),全新開發(fā)出的標(biāo)準(zhǔn)網(wǎng)站,不但價(jià)格便宜而且實(shí)用、靈活,特別適合中小公司網(wǎng)站制作。網(wǎng)站管理系統(tǒng)簡(jiǎn)單易用,維護(hù)方便,您可以完全操作網(wǎng)站資料,是中小公司快速網(wǎng)站建設(shè)的選擇。
首先要聲明一下:一般情況下,修改MySQL密碼,授權(quán),是需要有mysql里的root權(quán)限的。
注:本操作是在WIN命令提示符下,phpMyAdmin同樣適用。
用戶:phplamp
用戶數(shù)據(jù)庫(kù):phplampDB
1.MySQL命令行新建用戶
//登錄MYSQL
@mysql -u root -p
@密碼
//創(chuàng)建用戶
mysql insert into mysql.user(Host,User,Password) values('localhost','phplamp',password('1234'));
//刷新系統(tǒng)權(quán)限表
mysqlflush privileges;
這樣就創(chuàng)建了一個(gè)名為:phplamp 密碼為:1234 的用戶。
//退出后登錄一下
mysqlexit;
@mysql -u phplamp -p
@輸入密碼
mysql登錄成功
2.MySQL命令行為用戶授權(quán)
//登錄MYSQL(有ROOT權(quán)限)。我里我以ROOT身份登錄.
@mysql -u root -p
@密碼
//首先為用戶創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)(phplampDB)
mysqlcreate database phplampDB;
//授權(quán)phplamp用戶擁有phplamp數(shù)據(jù)庫(kù)的所有權(quán)限
@grant all privileges on phplampDB.* to phplamp@localhost identified by '1234'; //這里需要注意,如果發(fā)現(xiàn)找不到用戶,需要執(zhí)行命令 flush privilieges;
//刷新系統(tǒng)權(quán)限表
mysqlflush privileges;
mysql其它操作
//如果想指定部分權(quán)限給一用戶,可以這樣來(lái)寫:
mysqlgrant select,update on phplampDB.* to phplamp@localhost identified by '1234';
//刷新系統(tǒng)權(quán)限表。
mysqlflush privileges;
mysql grant 權(quán)限1,權(quán)限2,…權(quán)限n on 數(shù)據(jù)庫(kù)名稱.表名稱 to 用戶名@用戶地址 identified by ‘連接口令’;
權(quán)限1,權(quán)限2,…權(quán)限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14個(gè)權(quán)限。
當(dāng)權(quán)限1,權(quán)限2,…權(quán)限n被all privileges或者all代替,表示賦予用戶全部權(quán)限。
當(dāng)數(shù)據(jù)庫(kù)名稱.表名稱被*.*代替,表示賦予用戶操作服務(wù)器上所有數(shù)據(jù)庫(kù)所有表的權(quán)限。
用戶地址可以是localhost,也可以是ip地址、機(jī)器名字、域名。也可以用’%'表示從任何地址連接。
‘連接口令’不能為空,否則創(chuàng)建失敗。
例如:
mysqlgrant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by ‘123′;
給來(lái)自10.163.225.87的用戶joe分配可對(duì)數(shù)據(jù)庫(kù)vtdc的employee表進(jìn)行select,insert,update,delete,create,drop等操作的權(quán)限,并設(shè)定口令為123。
mysqlgrant all privileges on vtdc.* to joe@10.163.225.87 identified by ‘123′;
給來(lái)自10.163.225.87的用戶joe分配可對(duì)數(shù)據(jù)庫(kù)vtdc所有表進(jìn)行所有操作的權(quán)限,并設(shè)定口令為123。
mysqlgrant all privileges on *.* to joe@10.163.225.87 identified by ‘123′;
給來(lái)自10.163.225.87的用戶joe分配可對(duì)所有數(shù)據(jù)庫(kù)的所有表進(jìn)行所有操作的權(quán)限,并設(shè)定口令為123。
mysqlgrant all privileges on *.* to joe@localhost identified by ‘123′;
給本機(jī)用戶joe分配可對(duì)所有數(shù)據(jù)庫(kù)的所有表進(jìn)行所有操作的權(quán)限,并設(shè)定口令為123。
以創(chuàng)建wordpress網(wǎng)站的數(shù)據(jù)庫(kù)為例
1、創(chuàng)建數(shù)據(jù)庫(kù)
創(chuàng)建可指定字符,或者不指定字符,如果不指定字符,默認(rèn)為 utf8mb4 和 utf8mb4_0900_ai_ci
2、創(chuàng)建用戶
可自行指定用戶可訪問(wèn)的IP地址范圍。
3、授權(quán)用戶
4、直接一步到位
或者 這種方法 :創(chuàng)建并授權(quán)用戶,是二和三的合并。
1、查看數(shù)據(jù)庫(kù)
show databases可查詢所有存在的數(shù)據(jù)庫(kù)
2、查看用戶信息
用戶信息在系統(tǒng)數(shù)據(jù)庫(kù)mysql中的user表中。密碼查詢不會(huì)顯示明文密碼,而是顯示為加密后的密文。
3、查看用戶權(quán)限
有兩種方式查看。
第一種方式 : show grants for 'userwordpress';
第二種方式: select * from mysql.user where user='userwordpress'G;
g 相當(dāng)于’;’
G使每個(gè)字段打印到單獨(dú)的行,也有 ’;' 的作用
只能查出哪個(gè)數(shù)據(jù)庫(kù)的哪張表的權(quán)限,如查userwordpress在mysql數(shù)據(jù)庫(kù)的user表的權(quán)限,顯示都是N(no),沒有權(quán)限,如果查root用戶就都是Y(yes)選擇了。
用drop而非delete,簡(jiǎn)單的區(qū)分就是,drop是刪除【表】,truncate與delete則是刪除表中【記錄】。
刪除用戶
同理,刪除數(shù)據(jù)庫(kù)
用drop刪除時(shí),會(huì)有確認(rèn)信息,為了防止誤刪。(刪庫(kù)跑路,請(qǐng)謹(jǐn)慎操作)
1、首先用管理員進(jìn)入數(shù)據(jù)庫(kù)級(jí)中的安全性,點(diǎn)擊登錄名,點(diǎn)擊新建登錄名。
2、在界面中,創(chuàng)建登錄名,并設(shè)置默認(rèn)的數(shù)據(jù)庫(kù)的密碼。
3、然后勾選需要設(shè)置的數(shù)據(jù)庫(kù),完成創(chuàng)建。
4、然后就可以對(duì)數(shù)據(jù)庫(kù)中的User表進(jìn)行權(quán)限的設(shè)置了,右鍵“屬性”。
5、依次點(diǎn)擊“添加”,瀏覽”,“選擇對(duì)象”。
6、然后就可以下面的列表中找到對(duì)應(yīng)的權(quán)限授予進(jìn)行設(shè)置。