數(shù)據(jù)庫的維護_第1頁
數(shù)據(jù)庫的維護_第2頁
數(shù)據(jù)庫的維護_第3頁
數(shù)據(jù)庫的維護_第4頁
數(shù)據(jù)庫的維護_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、MySQL數(shù)據(jù)庫維護主要內(nèi)容:1、復(fù)習(xí)MySQL數(shù)據(jù)庫安全配置2、備份數(shù)據(jù) 3、數(shù)據(jù)庫維護 1MySQL數(shù)據(jù)庫的安全配置 MySQL 是完全網(wǎng)絡(luò)化的跨平臺關(guān)系型數(shù)據(jù)庫系統(tǒng),同時是具有客戶機/服務(wù)器體系結(jié)構(gòu)的分布式數(shù)據(jù)庫管理系統(tǒng)。 MySQL數(shù)據(jù)庫的安全配置: 1、用戶管理 2、用戶權(quán)限管理2MySQL授權(quán)表 當(dāng)首次安裝MySQL時,MySQL安裝程序在數(shù)據(jù)庫mysql中設(shè)置5個MySQL授權(quán)表,由這5個授權(quán)表共同決定哪個用戶可以連接服務(wù)器、從哪里連接以及連接后可以執(zhí)行哪些操作。 初始化時,表host、tables_priv 和columnts_priv是空的,表user和db就決定了MySQL

2、默認的訪問規(guī)則。 下面以MySQL管理員的身份查看一下表user和db的內(nèi)容。 授權(quán)表描述user定義哪些用戶從哪些主機可以連接到數(shù)據(jù)庫服務(wù)器,這些用戶的密碼以及它們對系統(tǒng)中所有數(shù)據(jù)庫的訪問權(quán)限(全局權(quán)限)db定義連接到數(shù)據(jù)庫服務(wù)器的那些用戶可以使用哪些數(shù)據(jù)庫,在這些數(shù)據(jù)庫中可執(zhí)行哪些操作(數(shù)據(jù)庫級權(quán)限),db通常與host配合使用host當(dāng)表db中的Host字段值為空時,由表host定義用戶可以從哪些主機連接到數(shù)據(jù)庫服務(wù)器,且不同的主機對指定的數(shù)據(jù)庫可有不同的權(quán)限tables_priv定義連接到數(shù)據(jù)庫服務(wù)器的那些用戶可以訪問哪些表,以及在這些表中可以執(zhí)行哪些操作(表級權(quán)限)columnts_

3、priv定義連接到數(shù)據(jù)庫服務(wù)器的那些用戶可以訪問哪些字段,以及在這些字段中可以執(zhí)行哪些操作(字段級權(quán)限)授權(quán)表 3查看表user和db的內(nèi)容1、查看數(shù)據(jù)庫mysql中表user前4個字段的內(nèi)容: select host,user,password,select_priv from mysql.user;2、要查看數(shù)據(jù)庫mysql中表db的前4個字段內(nèi)容: select host,db,user,select_priv from mysql.db;4用戶管理MySQL服務(wù)器中內(nèi)置系統(tǒng)數(shù)據(jù)庫,數(shù)據(jù)庫名為mysql,數(shù)據(jù)庫中內(nèi)置數(shù)據(jù)表,數(shù)據(jù)表名為user。只能由數(shù)據(jù)庫管理員(root,123)對用戶

4、賬號進行維護,增加新用戶、修改用戶密碼、刪除用戶賬號、用戶賬號授權(quán)。使用root、123登錄mysql數(shù)據(jù)庫管理系統(tǒng)。進入mysql提示符5User數(shù)據(jù)表中保存所有授權(quán)用戶(允許使用mysql數(shù)據(jù)庫的用戶)的用戶名、用戶密碼以及用戶權(quán)限表1/2。序號權(quán)限參數(shù)說明1Select_priv顯示記錄權(quán)限2Insert_priv插入記錄權(quán)限3Update_priv更新記錄權(quán)限4Delete_priv刪除記錄權(quán)限5Create_priv建立數(shù)據(jù)庫、數(shù)據(jù)表權(quán)限6Drop_priv刪除表文件的權(quán)限7Index_priv創(chuàng)建索引字段權(quán)限8Alter_priv修改表結(jié)構(gòu)權(quán)限6User數(shù)據(jù)表中保存所有授權(quán)用戶(允

5、許使用mysql數(shù)據(jù)庫的用戶)的用戶名、用戶密碼以及用戶權(quán)限表2/2。71.增加新的用戶創(chuàng)建新的用戶賬號包括用戶名、用戶密碼、用戶權(quán)限。打開mysql數(shù)據(jù)庫插入新的用戶賬號數(shù)據(jù)到user數(shù)據(jù)表激活新創(chuàng)建的用戶賬號命令格式:use mysql;insert into mysql.user(主機名稱,用戶名稱,用戶密碼,權(quán)限1,權(quán)限2, ) values(host,user,password,select_priv,);flush privileges;8增加新的用戶例1:創(chuàng)建一個新用戶guest,并為他設(shè)置密碼為guest,同時允許它從任何主機連接到數(shù)據(jù)庫服務(wù)器,設(shè)置步驟如下: use mysq

6、l; 創(chuàng)建新用戶guest,并為他設(shè)置密碼,同時允許它從任何主機連接到數(shù)據(jù)庫服務(wù)器的命令: insert into mysql.user (host,user,password) values (%, guest,password(guest);注意:此處必須使用password()函數(shù),該函數(shù)會為密碼加密,這樣在表user的字段password中保存的就是經(jīng)過加密的密碼。 重載MySQL授權(quán)表,可使用下面的命令: flush privileges;9增加新的用戶例2:用戶名bookuser,用戶密碼111111,擁有select,insert, update,delete,create,dr

7、op權(quán)限。use mysql;insert into mysql.user(host,user,password,select_priv,insert_priv,update_priv,delete_priv,create_priv,drop_priv) values (localhost,bookuser,password(111111) , y,y,y,y,y,y);flush privileges;102、修改用戶密碼命令格式:update set password=password(新密碼) where ;use mysql;update mysql.user set password

8、=password(新密碼) where ;flush privileges;11修改用戶密碼例題修改bookuser用戶的密碼111111為222222use mysql;update mysql.user set password=password(“222222”) where user=“bookuser”;flush privileges;123.刪除用戶賬號命令格式:delete from where use mysql;delete from mysql.user where ;flush privileges;13刪除用戶賬號例題刪除booktest用戶賬號use mysql;

9、delete from mysql.user where user=bookuser;flush privileges;14刪除用戶賬號例題【例】要刪除用戶guest,可使用下面的命令。 delete from mysql.user where user=guest; flush privileges;15用戶權(quán)限MySQL授權(quán)表中權(quán)限字段有以下兩種形式:(1)在表user、db和host中,所有權(quán)限字段都被聲明為ENUM(N, Y),即每一個權(quán)限字段值都可以被設(shè)置為N或Y,并且缺省值為N,表1列出了表user、db和host中可設(shè)置權(quán)限的字段。(2)在表tables_priv和columns

10、_priv中,權(quán)限字段被聲明為SET類型,即可以從所定義的權(quán)限集合中選擇任意個權(quán)限,表2列出了表tables_priv和columns_priv中權(quán)限字段及可設(shè)置的權(quán)限。 16授權(quán)表user、db和host中可設(shè)置的權(quán)限17授權(quán)表tables_priv和columns_priv中權(quán)限字段和可設(shè)置的權(quán)限表名字段名權(quán)限集合中的成員tables_privtable_privSelect、Insert、Update、Delete、Create、Drop、Grant、References、Index、Altercolumn_privSelect、Insert、Update、Referencescolum

11、ns_privcolumn_privSelect、Insert、Update、References18用戶權(quán)限的設(shè)置1使用GRANT語句授權(quán)GRANT語句的基本格式如下:GRANT 權(quán)限列表(字段列表) ON 數(shù)據(jù)庫名稱.表名稱 TO 用戶名域名或IP地址 IDENTIFIED BY 密碼值WITH GRANT OPTION;設(shè)置“域名或IP地址”的幾種常見情況19權(quán)限列表權(quán)限( privileges)ALL 授予用戶如下的所有權(quán)限ALTER 改變表、列和索引CREATE 創(chuàng)建數(shù)據(jù)庫和表DELETE 刪除表中的記錄DROP 丟棄和刪除表和數(shù)據(jù)庫FILE 讀、寫文件INDEX 添加、刪除索引IN

12、SERT 向表中插入記錄PROCESS 查看和停止系統(tǒng)進程20權(quán)限列表REFERENCES 當(dāng)前的MySQL還不能使用RELOAD 使用FLUSH語句SELECT 從表中查詢記錄SHUTDOWN 關(guān)閉MySQL數(shù)據(jù)庫UPDATE 更新表中的記錄USAGE 連接到MySQL數(shù)據(jù)庫,但是沒有權(quán)限21用戶權(quán)限的設(shè)置2、授予用戶不同級別的訪問權(quán)限例1:新建一個用戶tom,讓他能從子網(wǎng)192.168.0中任何主機連接到數(shù)據(jù)庫服務(wù)器,可以讀取數(shù)據(jù)庫cjgl的內(nèi)容,并且能修改表course中字段couname的值,可使用下面的命令: grant select on cjgl.* to tom192.168.

13、0.% identified by 123; grant update(couname) on cjgl.course to tom192.168.0.% ; 使用GRANT語句設(shè)置權(quán)限運用級別的示例數(shù)據(jù)庫名稱.表名稱描述權(quán)限運用級別決定權(quán)限運用級別的授權(quán)表*.*適用于所有數(shù)據(jù)庫和所有表全局級userxsxk.*(或xsxk)適用于指定數(shù)據(jù)庫xsxk中的所有表數(shù)據(jù)庫級dbxsxk.student適用于數(shù)據(jù)庫xsxk中的指定表student表級tables_priv22用戶權(quán)限的設(shè)置3、授予用戶管理權(quán)限的權(quán)利 例2:MySQL管理員要授予用戶admin可以從本地連接到數(shù)據(jù)庫服務(wù)器,對cjgl具有

14、完全訪問權(quán)限,并可將其所擁有的權(quán)限授予其他用戶,可使用下面的命令: grant all on cjgl.* to adminlocalhost identified by 123 with grant option;23用戶權(quán)限的設(shè)置 例3:創(chuàng)建口令為 99hjc的用戶john,該用戶在數(shù)據(jù)庫cjgl的所有表都有select和insert權(quán)限,并且能夠從任何主機連接到數(shù)據(jù)庫服務(wù)器 grant select, insert on cjgl.* to john% identified by 99hjc;24用戶權(quán)限的設(shè)置 例4:添加口令為45sdg11的用戶jane, 該用戶在數(shù)據(jù)庫cjgl的表s

15、tudent上具有ALL權(quán)限,并且只能從本地主機上連接數(shù)據(jù)庫 grant all on cjgl.student to janelocalhost identified by 45sdg11;25回收權(quán)限REVOKE語句的基本格式如下:REVOKE 權(quán)限列表(字段列表) ON 數(shù)據(jù)庫名稱.表名稱 FROM 用戶名域名或IP地址 26回收權(quán)限例:回收用戶john在數(shù)據(jù)庫cjgl的insert權(quán)限。 revoke insert on cjgl.* from john%;27新增用戶練習(xí)例:新增用戶名booktest,用戶密碼333333,擁有select,insert, update,delete

16、,create,drop,index,alter權(quán)限。use mysql;insert into mysql.user(host,user,password,select_priv,insert_priv,update_priv,delete_privi,create_priv,drop_priv,index_priv,alter_priv) values (localhost,booktest,password(333333) , y,y,y,y,y,y,y,y);flush privileges;28修改用戶權(quán)限命令格式:update set 權(quán)限參數(shù)名稱=權(quán)限值 where ;use m

17、ysql;update mysql.user set 權(quán)限名1=權(quán)限值1,權(quán)限名2=權(quán)限值2 where ;flush privileges;29修改權(quán)限例題修改bookuser用戶的index_priv和alter_priv為yuse mysql;update mysql.user set index_priv=y,alter_priv=y where user=bookuser;flush privileges;30設(shè)置MySQL用戶帳號密碼1、使用mysqladmin程序:(1)、設(shè)置在本地以root身分登錄的密碼 mysqladmin -h localhost -u root pass

18、word password (2)、設(shè)置遠程主機以root身分登錄的密碼 mysqladmin -h remote -u root password password 注意:在初始設(shè)置時,這兩條語句都要運行,以確保數(shù)據(jù)庫本地訪問和網(wǎng)絡(luò)訪問的安全。2、通過set password這條SQL語句設(shè)置: mysql set password for rootlocalhost = password(password); mysql set password for rootremote = password(password);3、直接修改user權(quán)限表: mysql use mysql; mysql update user set password=password(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論