你的mysql數(shù)據(jù)庫里面有一個數(shù)據(jù)庫,名字教做mysql,里面有個表,名字叫做user,你看一下這個表的結(jié)構(gòu)和現(xiàn)有數(shù)據(jù),你就知道應該怎么做了,比如你可以添加一條數(shù)據(jù),host為你指定的ip,user可以是%,password就不管了,后面設(shè)置相應的權(quán)限(可以全部都是y),這樣那個機器無論用什么用戶和密碼都可以連接數(shù)據(jù)庫,而擁有你指定的權(quán)限。
創(chuàng)新互聯(lián)公司是一家專注于成都做網(wǎng)站、成都網(wǎng)站建設(shè)與策劃設(shè)計,舞鋼網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:舞鋼等地區(qū)。舞鋼做網(wǎng)站價格咨詢:18980820575
耐心點吧,我相信你一看就明白。
1、創(chuàng)建新用戶
通過root用戶登錄之后創(chuàng)建
grant all privileges on *.* to testuser@localhost identified by "123456" ;//創(chuàng)建新用戶,用戶名為testuser,密碼為123456 ;
grant all privileges on *.* to testuser@localhost identified by "123456" ;//設(shè)置用戶testuser,可以在本地訪問mysql
grant all privileges on *.* to testuser@"%" identified by "123456" ; //設(shè)置用戶testuser,可以在遠程訪問mysql
flush privileges ;//mysql 新設(shè)置用戶或更改密碼后需用flush privileges刷新MySQL的系統(tǒng)權(quán)限相關(guān)表,否則會出現(xiàn)拒絕訪問,還有一種方法,就是重新啟動mysql服務(wù)器,來使新設(shè)置生效
2、設(shè)置用戶訪問數(shù)據(jù)庫權(quán)限
grant all privileges on test_db.* to testuser@localhost identified by "123456" ;//設(shè)置用戶testuser,只能訪問數(shù)據(jù)庫test_db,其他數(shù)據(jù)庫均不能訪問 ;
grant all privileges on *.* to testuser@localhost identified by "123456" ;//設(shè)置用戶testuser,可以訪問mysql上的所有數(shù)據(jù)庫 ;
grant all privileges on test_db.user_infor to testuser@localhost identified by "123456" ;//設(shè)置用戶testuser,只能訪問數(shù)據(jù)庫test_db的表user_infor,數(shù)據(jù)庫中的其他表均不能訪問 ;
3、設(shè)置用戶操作權(quán)限
grant all privileges on *.* to testuser@localhost identified by "123456" WITH GRANT OPTION ;//設(shè)置用戶testuser,擁有所有的操作權(quán)限,也就是管理員 ;
grant select on *.* to testuser@localhost identified by "123456" WITH GRANT OPTION ;//設(shè)置用戶testuser,只擁有【查詢】操作權(quán)限 ;
grant select,insert on *.* to testuser@localhost identified by "123456" ;//設(shè)置用戶testuser,只擁有【查詢\插入】操作權(quán)限 ;
grant select,insert,update,delete on *.* to testuser@localhost identified by "123456" ;//設(shè)置用戶testuser,只擁有【查詢\插入】操作權(quán)限 ;
REVOKE select,insert ON what FROM testuser//取消用戶testuser的【查詢\插入】操作權(quán)限 ;
方法如下:
修改mysql 存儲過程的definer
修改mysql.proc表 的definer字段
update mysql.proc set definer='root@%' where db='servant_591up'; UPDATE `mysql`.`proc` SET `definer`='root00@%' WHERE `db`='test' AND `name`='jjjj' AND `type`='PROCEDURE'; UPDATE `mysql`.`proc` SET `definer`='wtc_678869@%' WHERE `db`='servant_591up' AND `type`='PROCEDURE';
2.修改sql security
ALTER PROCEDURE www SQL SECURITY INVOKER ; ALTER PROCEDURE www SQL SECURITY DEFINER ;
(1)MySQL存儲過程是通過指定SQL SECURITY子句指定執(zhí)行存儲過程的實際用戶;
(2)如果SQL SECURITY子句指定為DEFINER,存儲過程將使用存儲過程的DEFINER執(zhí)行存儲過程,驗證調(diào)用存儲過程的用戶是否具有存儲過程的execute權(quán)限和DEFINER用戶是否具有存儲過程引用的相關(guān)對象的權(quán)限;
(3)如果SQL SECURITY子句指定為INVOKER,那么MySQL將使用當前調(diào)用存儲過程的用戶執(zhí)行此過程,并驗證用戶是否具有存儲過程的execute權(quán)限和存儲過程引用的相關(guān)對象的權(quán)限;
(4)如果不顯示的指定SQL SECURITY子句,MySQL默認將以DEFINER執(zhí)行存儲過程。
3.執(zhí)行存儲過程授權(quán)
GRANT EXECUTE ON test.* TO 'wtc'@'%'; GRANT CREATE ROUTINE,ALTER ROUTINE, SELECT,CREATE, INSERT, UPDATE, DELETE, EXECUTE ON test.* TO 'wtc'@'%' IDENTIFIED BY '111111'
CREATE ROUTINE : 創(chuàng)建存儲過程的權(quán)限
ALTER ROUTINE : 修改存儲過程的權(quán)限
4.刪除用戶
REVOKE? all ON test.* FROM wtc@'%'
DELETE FROM user WHERE User='user_name' and Host='host_name';?
FLUSH PRIVILEGES;
好文要頂?關(guān)注我
看這個情況是多半是由于root@localhost root@'%' 兩個賬號的權(quán)限不同造成的 修改root@'%'的權(quán)限即可 或者新建一個外部賬號
在數(shù)據(jù)庫機上用root登陸:
給遠程root賬號以所有數(shù)據(jù)庫的權(quán)限
grant all on *.* to root@'%' identified by 'password';
如果需要也可以加上 with grant option;
創(chuàng)建user賬號密碼password 可以從局域網(wǎng)內(nèi)訪問數(shù)據(jù)庫的所有庫
grant all on *.* to user@'192.168.1.%' identified by 'password';
1,要授予的權(quán)限
2,被授予訪問權(quán)限的數(shù)據(jù)庫或表
3,用戶名
grant和revoke可以在幾個層次上控制訪問權(quán)限
1,整個服務(wù)器,使用 grant ALL 和revoke ALL
2,整個數(shù)據(jù)庫,使用on database.*
3,特點表,使用on database.table
4,特定的列
5,特定的存儲過程
mysql更改用戶權(quán)限
This entry was posted by admin Monday, 26 April, 2010
1.“grant all on *.* to root@’%’ identified by ‘yourpassword’;”——這個還可以順帶設(shè)置密碼。
2.“flush privileges; ”——刷新一下,讓權(quán)限生效。
mysql的一些其他的管理,可以用mysqladmin命令??梢杂脕碓O(shè)置密碼什么的。
grant方面的詳細信息可以看我下面的轉(zhuǎn)載:
本文實例,運行于 MySQL 5.0 及以上版本。
MySQL 賦予用戶權(quán)限命令的簡單格式可概括為:
grant 權(quán)限 on 數(shù)據(jù)庫對象 to 用戶
一、grant 普通數(shù)據(jù)用戶,查詢、插入、更新、刪除 數(shù)據(jù)庫中所有表數(shù)據(jù)的權(quán)利。
grant select on testdb.* to common_user@’%’
grant insert on testdb.* to common_user@’%’
grant update on testdb.* to common_user@’%’
grant delete on testdb.* to common_user@’%’
或者,用一條 MySQL 命令來替代:
grant select, insert, update, delete on testdb.* to common_user@’%’
新聞名稱:mysql中怎么修改權(quán)限 mysql如何設(shè)置權(quán)限
網(wǎng)頁鏈接:http://jinyejixie.com/article32/doohppc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、品牌網(wǎng)站制作、網(wǎng)站策劃、網(wǎng)站收錄、網(wǎng)站導航、App設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)