『壹』 MYsql資料庫用戶許可權變更,請高技術的人進來,謝謝
你知道用GRANT賦權,難道就不知道REVOKE收回許可權嗎,這兩個命令的語法格式如下:
GRANT priv_type [(column_list)] [, priv_type [(column_list)] ...]
ON {tbl_name | * | *.* | db_name.*}
TO user_name [IDENTIFIED BY 'password']
[, user_name [IDENTIFIED BY 'password'] ...]
[WITH GRANT OPTION]
REVOKE priv_type [(column_list)] [, priv_type [(column_list)] ...]
ON {tbl_name | * | *.* | db_name.*}
FROM user_name [, user_name ...]
『貳』 怎麼連接到伺服器上的mysql資料庫
mysql -u用戶名 -h主機名 -p
前提是伺服器的mysql上有該用戶,以及對應的IP
可登入mysql伺服器上執行
grant all on test.* to 用戶名@『客戶機IP』 identified by '密碼' ;
flush privileges; #刷新許可權表,讓所做修改生效
上面指令的意思是 將test這個資料庫的全部內容以及全部的操作許可權賦權給從特定IP上登入到本伺服器的用戶。
『叄』 mysql怎麼創建新用戶並賦權
進入到mysql安裝目錄的bin目錄下。如下圖
在此處打開命令行。或者是切換到該目錄下。如下圖:
命令:C:\mysql\bin
使用root用戶登錄數據。如下圖:
命令:mysql -uroot -p
登錄成功之後。開始創建用戶。如下圖:
命令: create user'rsm'@'localhost'IDENTIFIED BY'123456';
給該用戶賦權:
使用命令:
GRANT ALL ON *.* TO 'rsm'@'%';
賦權成功後。退出當前用戶。使用新創建用戶登錄。
『肆』 mysql新建賬號需要給什麼許可權
MySQL新建賬號需要指定要訪問資料庫的IP,數據和結構,按業務需求定,管理基本上不需要給,資源限制先默認,後期根據業務量調整。
另外,許可權基本按業務需求賦權,不能脫離業務需求,
『伍』 怎麼修改mysql資料庫伺服器密碼
mysql
-u用戶名
-h主機名
-p
前提是伺服器的mysql上有該用戶,以及對應的ip
可登入mysql伺服器上執行
grant
all
on
test.*
to
用戶名@『客戶機ip』
identified
by
'密碼'
;
flush
privileges;
#刷新許可權表,讓所做修改生效
上面指令的意思是
將test這個資料庫的全部內容以及全部的操作許可權賦權給從特定ip上登入到本伺服器的用戶。
『陸』 怎麼使用MySQL資料庫的23個注意事項
使用MySQL,安全問題不能不注意。以下是MySQL提示的23個注意事項:
1。如果客戶端和伺服器端的連接需要跨越並通過不可信任的網路,那麼就需要使用SSH隧道來加密該連接的通信。
2。用set password語句來修改用戶的密碼,三個步驟,先「mysql -u root」登陸資料庫系統,然後「mysql> update mysql.user set password=password('newpwd')」,最後執行「flush privileges」就可以了。
3。需要提防的攻擊有,防偷聽、篡改、回放、拒絕服務等,不涉及可用性和容錯方面。對所有的連接、查詢、其他操作使用基於ACL即訪問控制列表的安全措施來完成。也有一些對SSL連接的支持。
4。除了root用戶外的其他任何用戶不允許訪問mysql主資料庫中的user表;
加密後存放在user表中的加密後的用戶密碼一旦泄露,其他人可以隨意用該用戶名/密碼相應的資料庫;
5。用grant和revoke語句來進行用戶訪問控制的工作;
6。不使用明文密碼,而是使用md5()和sha1()等單向的哈系函數來設置密碼;
7。不選用字典中的字來做密碼;
8。採用防火牆來去掉50%的外部危險,讓資料庫系統躲在防火牆後面工作,或放置在DMZ區域中;
9。從網際網路上用nmap來掃描3306埠,也可用telnet server_host 3306的方法測試,不能允許從非信任網路中訪問資料庫伺服器的3306號TCP埠,因此需要在防火牆或路由器上做設定;
10。為了防止被惡意傳入非法參數,例如where ID=234,別人卻輸入where ID=234 OR 1=1導致全部顯示,所以在web的表單中使用''或""來用字元串,在動態URL中加入%22代表雙引號、%23代表井號、%27代表單引號;傳遞未檢 查過的值給mysql資料庫是非常危險的;
11。在傳遞數據給mysql時檢查一下大小;
12。應用程序需要連接到資料庫應該使用一般的用戶帳號,只開放少數必要的許可權給該用戶;
13。在各編程介面(C C++ PHP Perl Java JDBC等)中使用特定『逃脫字元』函數;
在網際網路上使用mysql資料庫時一定少用傳輸明文的數據,而用SSL和SSH的加密方式數據來傳輸;
14。學會使用tcpmp和strings工具來查看傳輸數據的安全性,例如tcpmp -l -i eth0 -w -src or dst port 3306 | strings。以普通用戶來啟動mysql資料庫服務;
15。不使用到表的聯結符號,選用的參數 --skip-symbolic-links;
16。確信在mysql目錄中只有啟動資料庫服務的用戶才可以對文件有讀和寫的許可權;
17。不許將process或super許可權付給非管理用戶,該mysqladmin processlist可以列舉出當前執行的查詢文本;super許可權可用於切斷客戶端連接、改變伺服器運行參數狀態、控制拷貝復制資料庫的伺服器;
18.file許可權不付給管理員以外的用戶,防止出現load data '/etc/passwd'到表中再用select 顯示出來的問題;
19。如果不相信DNS服務公司的服務,可以在主機名稱允許表中只設置IP數字地址;
20。使用max_user_connections變數來使mysqld服務進程,對一個指定帳戶限定連接數;
21.grant語句也支持資源控制選項;
22。啟動mysqld服務進程的安全選項開關,--local-infile=0 或1 若是0則客戶端程序就無法使用local load data了,賦權的一個例子grant insert(user) on mysql.user to 'user_name'@'host_name';若使用--skip-grant-tables系統將對任何用戶的訪問不做任何訪問控制,但可以用 mysqladmin flush-privileges或mysqladmin reload來開啟訪問控制;默認情況是show databases語句對所有用戶開放,可以用--skip-show-databases來關閉掉。
23。碰到Error 1045(28000) Access Denied for user 'root'@'localhost' (Using password:NO)錯誤時,你需要重新設置密碼,具體方法是:先用--skip-grant-tables參數啟動mysqld,然後執行 mysql -u root mysql,mysql>update user set password=password('newpassword') where user='root';mysql>Flush privileges;,最後重新啟動mysql就可以了。
『柒』 mysql ROOT用戶grant不能賦權問題
如果你的操作確實沒問題的話,可能是個bug,換成5.0.37版本的吧,當前最新穩定版本。 MySQL中文網: http://imysql.cn MySQL 優化,培訓,解決方案,技術支持 http://imysql.cn/?q=node/148
『捌』 如何創建新用戶和授予MySQL中的許可權
mysql怎麼創建新用戶並賦權_網路經驗:
http://jingyan..com/article/ae97a646de4cd2bbfd461dfc.html