mysql 打開數(shù)據(jù)庫需要什么權(quán)限 如何把mysql設(shè)置成網(wǎng)絡(luò)數(shù)據(jù)庫,即遠(yuǎn)程訪問mysql?
如何把mysql設(shè)置成網(wǎng)絡(luò)數(shù)據(jù)庫,即遠(yuǎn)程訪問mysql?第一種方法:直接輸入賬戶名和密碼進(jìn)入數(shù)據(jù)庫。找到mysql數(shù)據(jù)庫的user表,直接updateroot用戶的Host,將Host:localho
如何把mysql設(shè)置成網(wǎng)絡(luò)數(shù)據(jù)庫,即遠(yuǎn)程訪問mysql?
第一種方法:直接輸入賬戶名和密碼進(jìn)入數(shù)據(jù)庫。找到mysql數(shù)據(jù)庫的user表,直接updateroot用戶的Host,將Host:localhost,user:root改成Host:%,user:root然后mysqlgtflushprivileges(運(yùn)行此句才生效,或者重啟MySQL)。
因?yàn)閙ysql的權(quán)限都在cache里,所以要刷新一下。改成%后,任意IP都可訪問mysql服務(wù)器,十分不安全。可以將%將換成一個(gè)IP地址,即只允許來自該IP地址的訪問。
第二種方法:直接輸入賬戶名和密碼進(jìn)入數(shù)據(jù)庫。mysqlgtGRANTALLPRIVILEGESON*.*TO#39root#39@#39%#39IDENTIFIEDBY#39youpassword#39WITHGRANTOPTIONmysqlgtflushprivileges可以將%將換成一個(gè)IP地址,即只允許來自該IP地址的訪問。
root用戶權(quán)限過大,建議新建用戶,賦予其對(duì)某個(gè)數(shù)據(jù)庫的部分權(quán)限
如何查看數(shù)據(jù)庫中的授權(quán)信息?
MySQL中所有使用者的權(quán)限是記錄在mysql這個(gè)數(shù)據(jù)庫的users資料表中所以你只要先use mysql再SELECT * FROM users 你可以看到所有的使用者權(quán)限有關(guān)db的數(shù)據(jù)是記錄在Db(大小寫要注意)這個(gè)數(shù)據(jù)表中所以只要呼叫出Db的資料 SELECT * FROM Db 就可以看到你要的答案或者你可以用 SELECT * FROM Db WHERE DbphplampDB找出你要的答案
mysql對(duì)象權(quán)限分為哪三個(gè)級(jí)別?
Mysql的權(quán)限共分為5個(gè)級(jí)別,分別是
level
Global Level的權(quán)限控制又稱為全局權(quán)限控制,所有權(quán)限信息都保存在表中。
level
Database level是在global level之下,其他三個(gè)level之上的級(jí)別,其作用域即為指定整個(gè)數(shù)據(jù)庫中的所有對(duì)象。
level
Table level權(quán)限是database level之下的級(jí)別,它會(huì)被global level和database level覆蓋,但它同樣也有能力覆蓋下面的兩個(gè)級(jí)別。
level
Column level僅僅是對(duì)某個(gè)表的指定的列設(shè)置權(quán)限。它同樣可以被其上的級(jí)別覆蓋,但不會(huì)覆蓋其下的routine level級(jí)別,因?yàn)樗croutine level沒有權(quán)限重合。
level
Routine level權(quán)限只有execute和alter routine兩種,主要針對(duì)procedure和function。