十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶(hù) + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專(zhuān)業(yè)推廣+無(wú)憂(yōu)售后,網(wǎng)站問(wèn)題一站解決
MySql中添加用戶(hù),新建數(shù)據(jù)庫(kù),用戶(hù)授權(quán),刪除用戶(hù),修改密碼(注意每行后邊都跟個(gè);表示一個(gè)命令語(yǔ)句結(jié)束):
“只有客戶(hù)發(fā)展了,才有我們的生存與發(fā)展!”這是成都創(chuàng)新互聯(lián)公司的服務(wù)宗旨!把網(wǎng)站當(dāng)作互聯(lián)網(wǎng)產(chǎn)品,產(chǎn)品思維更注重全局思維、需求分析和迭代思維,在網(wǎng)站建設(shè)中就是為了建設(shè)一個(gè)不僅審美在線(xiàn),而且實(shí)用性極高的網(wǎng)站。創(chuàng)新互聯(lián)對(duì)成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)站開(kāi)發(fā)、網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站優(yōu)化、網(wǎng)絡(luò)推廣、探索永無(wú)止境。
1.新建用戶(hù)
1.1 登錄MYSQL:
@mysql -u root -p
@密碼
1.2 創(chuàng)建用戶(hù):
mysql insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));
這樣就創(chuàng)建了一個(gè)名為:test 密碼為:1234 的用戶(hù)。
注意:此處的"localhost",是指該用戶(hù)只能在本地登錄,不能在另外一臺(tái)機(jī)器上遠(yuǎn)程登錄。如果想遠(yuǎn)程登錄的話(huà),將"localhost"改為"%",表示在任何一臺(tái)電腦上都可以登錄。也可以指定某臺(tái)機(jī)器可以遠(yuǎn)程登錄。
1.3 然后登錄一下:
mysqlexit;
@mysql -u test -p
@輸入密碼
mysql登錄成功
2.為用戶(hù)授權(quán)
授權(quán)格式:grant 權(quán)限 on 數(shù)據(jù)庫(kù).* to 用戶(hù)名@登錄主機(jī) identified by "密碼";
2.1 登錄MYSQL(有ROOT權(quán)限),這里以ROOT身份登錄:
@mysql -u root -p
@密碼
2.2 首先為用戶(hù)創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)(testDB):
mysqlcreate database testDB;
2.3 授權(quán)test用戶(hù)擁有testDB數(shù)據(jù)庫(kù)的所有權(quán)限(某個(gè)數(shù)據(jù)庫(kù)的所有權(quán)限):
mysqlgrant all privileges on testDB.* to test@localhost identified by '1234';
mysqlflush privileges;//刷新系統(tǒng)權(quán)限表
格式:grant 權(quán)限 on 數(shù)據(jù)庫(kù).* to 用戶(hù)名@登錄主機(jī) identified by "密碼";
2.4 如果想指定部分權(quán)限給一用戶(hù),可以這樣來(lái)寫(xiě):
mysqlgrant select,update on testDB.* to test@localhost identified by '1234';
mysqlflush privileges; //刷新系統(tǒng)權(quán)限表
2.5 授權(quán)test用戶(hù)擁有所有數(shù)據(jù)庫(kù)的某些權(quán)限:
mysqlgrant select,delete,update,create,drop on *.* to test@"%" identified by "1234";
//test用戶(hù)對(duì)所有數(shù)據(jù)庫(kù)都有select,delete,update,create,drop 權(quán)限。
//@"%" 表示對(duì)所有非本地主機(jī)授權(quán),不包括localhost。(localhost地址設(shè)為127.0.0.1,如果設(shè)為真實(shí)的本地地址,不知道是否可以,沒(méi)有驗(yàn)證。)
//對(duì)localhost授權(quán):加上一句grant all privileges on testDB.* to test@localhost identified by '1234';即可。
下面的例子顯示如何使用MySQL客戶(hù)安裝新用戶(hù) 這些例子假定權(quán)限已缺省被安裝 這意味著為了改變 你必須在MySQL正在運(yùn)行同一臺(tái)機(jī)器上 你必須作為MySQL root用戶(hù)連接 并且root用戶(hù)必須對(duì)MySQL數(shù)據(jù)庫(kù)有insert權(quán)限和reload管理權(quán)限 另外 如果你改變了root用戶(hù)口令 你必須如下的MySQL命令指定它
你可以通過(guò)發(fā)出GRANT語(yǔ)句增加新用戶(hù)
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語(yǔ)句安裝 個(gè)新用戶(hù)
monty 可以從任何地方連接服務(wù)器的一個(gè)完全的超級(jí)用戶(hù) 但是必須使用一個(gè)口令( something 做這個(gè) 注意 我們必須對(duì) monty@localhost和monty@ % 發(fā)出GRANT語(yǔ)句 如果我們?cè)黾觢ocalhost條目 對(duì)localhost的匿名用戶(hù)條目在我 們從本地主機(jī)連接接時(shí)由mysql_install_db創(chuàng)建的條目將優(yōu)先考慮 因?yàn)樗懈囟ǖ腍ost字段值 所以以u(píng)ser表排列順序看更早到來(lái)
admin 可以從localhost沒(méi)有一個(gè)口令進(jìn)行連接并且被授予reload和process管理權(quán)限的用戶(hù) 這允許用戶(hù)執(zhí)行mysqladmin reload mysqladmin refresh和mysqladmin flush *命令 還有mysqladmin processlist 沒(méi)有授予數(shù)據(jù)庫(kù)有關(guān)的權(quán)限 他們能在以后通過(guò)發(fā)出另一個(gè)GRANT語(yǔ)句授權(quán)
dummy 可以不用一個(gè)口令連接的一個(gè)用戶(hù) 但是只能從本地主機(jī) 全局權(quán)限被設(shè)置為 N USAGE權(quán)限類(lèi)型允許你無(wú)需權(quán)限就可設(shè)置一個(gè)用戶(hù) 它假定你將在以后授予數(shù)據(jù)庫(kù)相關(guān)的權(quán)限
你也可以直接通過(guò)發(fā)出INSERT語(yǔ)句增加同樣的用戶(hù)存取信息 然后告訴服務(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版本 對(duì)上述 你可能必須使用一個(gè)不同數(shù)目 Y 值(在 以前的版本有更少的權(quán)限列) 對(duì)admin用戶(hù) 只用在 開(kāi)始的版本具有的更加可讀的INSERT擴(kuò)充的語(yǔ)法
注意 為了設(shè)置一個(gè)超級(jí)用戶(hù) 你只需創(chuàng)造一個(gè)user表?xiàng)l目 其權(quán)限字段設(shè)為 Y 不需要db或host表的條目
在user表中的權(quán)限列不是由最后一個(gè)INSERT語(yǔ)句明確設(shè)置的(對(duì)dummy用戶(hù)) 因此那些列被賦予缺省值 N 這是GRANT USAGE做的同樣的事情
下列例子增加一個(gè)用戶(hù)custom 他能從主機(jī)localhost server domain和whitehouse gov連接 他只想要從 localhost存取bankaccount數(shù)據(jù)庫(kù) 從whitehouse gov存取expenses數(shù)據(jù)庫(kù)和從所有 臺(tái)主機(jī)存取customer 數(shù)據(jù)庫(kù) 他想要從所有 臺(tái)主機(jī)上使用口令stupid
為了使用GRANT語(yǔ)句設(shè)置個(gè)用戶(hù)的權(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 ;
通過(guò)直接修改授權(quán)表設(shè)置用戶(hù)權(quán)限 運(yùn)行這些命令(注意 在結(jié)束時(shí)FLUSH PRIVILEGES)
lishixinzhi/Article/program/MySQL/201311/29628
命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';
說(shuō)明:username - 你將創(chuàng)建的用戶(hù)名, host - 指定該用戶(hù)在哪個(gè)主機(jī)上可以登陸,如果是本地用戶(hù)可用localhost, 如果想讓該用戶(hù)可以從任意遠(yuǎn)程主機(jī)登陸,可以使用通配符%. password - 該用戶(hù)的登陸密碼,密碼可以為空,如果為空則該用戶(hù)可以不需要密碼登陸服務(wù)器.
例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';
進(jìn)入到mysql安裝目錄的bin目錄下。
在此處打開(kāi)命令行。或者是切換到該目錄下。
命令:C:\mysql\bin
使用root用戶(hù)登錄數(shù)據(jù)。
命令:mysql
-uroot
-p
登錄成功之后。開(kāi)始創(chuàng)建用戶(hù)。
命令:
create
user'rsm'@'localhost'IDENTIFIED
BY'123456';
給...