freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

mysql數(shù)據(jù)庫技術(shù)教案-資料下載頁

2025-10-29 22:30本頁面

【導(dǎo)讀】目前運(yùn)行速度最快的SQL語言。除此外還具有許多其他數(shù)據(jù)庫所不具有的功能和選擇。沒有限制同時(shí)訪問數(shù)據(jù)庫的用戶數(shù)量??梢员4嬗涗洺^50,000,000條??梢院唵?、有效地進(jìn)行用戶權(quán)限的設(shè)置。從MySQL數(shù)據(jù)庫具有的以上特點(diǎn)可以看出,MySQL數(shù)據(jù)庫是一個(gè)運(yùn)行速度快、多線程、多用。戶和強(qiáng)大的SQL數(shù)據(jù)庫服務(wù)器。MySQL可以運(yùn)行在多種平臺(tái)上,包括WindowsNT、UNIX和Linux. MySQL是建立數(shù)據(jù)庫驅(qū)動(dòng)和動(dòng)態(tài)網(wǎng)站的最佳數(shù)據(jù)庫。目前,國際上知名公司也開始把MySQL作為其數(shù)據(jù)庫管理系統(tǒng),這也充分的證明了。MySQL數(shù)據(jù)庫的優(yōu)越性能和廣闊的發(fā)展前景。在全球有許多MySQL數(shù)據(jù)庫的鏡像網(wǎng)站。下載,這樣可以比較快地得到MySQL數(shù)據(jù)庫。MySQL數(shù)據(jù)庫后,接下來進(jìn)行安裝,筆者就以Windows2020為例來進(jìn)行介紹。數(shù)據(jù)庫壓縮文件解壓到指定目錄。都是合法的科學(xué)表示法表示的數(shù)。而不是合法的,因?yàn)橹笖?shù)前的符號(hào)未給出。因此,ISAM執(zhí)行讀取操作的速度很快,而且不占。MyISAM是MySQL的ISAM擴(kuò)展格式和缺省的數(shù)據(jù)庫引擎。用來恢復(fù)浪費(fèi)空間的MyISAMPack工具。

  

【正文】 二、調(diào)用 MySQL 存儲(chǔ)過程 1. call pr_add(10, 20)。 執(zhí)行 MySQL 存儲(chǔ)過程,存儲(chǔ)過程參數(shù)為 MySQL 用戶變量。 1. set @a = 10。 2. set @b = 20。 3. call pr_add(@a, @b)。 三、 MySQL 存儲(chǔ)過程特點(diǎn) 創(chuàng)建 MySQL 存儲(chǔ)過程的簡單語法為: 1. create procedure 存儲(chǔ)過程名字 () 2. ( 3. [in|out|inout] 參數(shù) datatype 4. ) 5. begin 6. MySQL 語句 。 7. end。 MySQL 存儲(chǔ)過程參數(shù)如果不顯式指定“ in”、“ out”、“ inout”,則默認(rèn)為“ in”。習(xí)慣上,對(duì)于是“ in” 的參數(shù),我們都不會(huì)顯式指定。 1. MySQL 存儲(chǔ)過程名字后面的“ ()”是必須的,即使沒有一個(gè)參數(shù),也需要“ ()” 2. MySQL 存儲(chǔ)過程參數(shù),不能在參數(shù)名稱前加“ @”,如:“ @a int”。下面的創(chuàng)建存儲(chǔ) 35 過程語 法在 MySQL 中是錯(cuò)誤的(在 SQL Server 中是正確的)。 MySQL 存儲(chǔ)過程中的變量,不需要在變量名字前加“ @”,雖然 MySQL 客戶端用戶變量要加個(gè)“ @”。 3. MySQL 存儲(chǔ)過程的參數(shù)不能指定默認(rèn)值。 4. MySQL 存儲(chǔ)過程不需要在 procedure body 前面加 “ as”。而 SQL Server 存儲(chǔ)過程必須加 “ as” 關(guān)鍵字。 5. 如果 MySQL 存儲(chǔ)過程中包含多條 MySQL 語句,則需要 begin end 關(guān)鍵字。 6. MySQL 存儲(chǔ)過程中的每條語句 的末尾,都要加上分號(hào) “ ?!? 7. MySQL 存儲(chǔ)過程中的注釋。 8. 不能在 MySQL 存儲(chǔ)過程中使用 “ return” 關(guān)鍵字。 9. 調(diào)用 MySQL 存儲(chǔ)過程時(shí)候,需要在過程名字后面加“ ()”,即使沒有一個(gè)參數(shù),也需要“ ()” 1. call pr_no_param()。 10. 因?yàn)? MySQL 存儲(chǔ)過程參數(shù)沒有默認(rèn)值,所以在調(diào)用 MySQL 存儲(chǔ)過程時(shí)候,不能省略參數(shù)??梢杂? null 來替代。 小結(jié) 復(fù)習(xí) 思考題 參考書 本節(jié)講述了有關(guān)表的大部分操作,現(xiàn)在將所述內(nèi)容總結(jié)如下: MySQL的表的三種類型 如何創(chuàng)建表、刪除表 如何改變表的結(jié)構(gòu)、名字 復(fù)習(xí)題目: 1. 數(shù)據(jù)表操作方法? 教材:《 mysql實(shí)用教程 》 《 mysql入門很簡單》清華大學(xué)出版社 Mysql數(shù)據(jù)庫應(yīng)用 36 課程名稱 備份與恢復(fù) 授課教師 授課班級(jí) 授課時(shí)數(shù) 4 授課方式 理論課 授課重點(diǎn)、難點(diǎn) 授課內(nèi)容、教具與時(shí)間分配 目前 MySQL 支持的免費(fèi)備份工具有: mysqldump、 mysqlhotcopy,還可以用 SQL 語法進(jìn)行備份: BACKUP TABLE 或者 SELECT INTO OUTFILE,又或者備份二進(jìn)制日志( binlog),還可以是直接拷貝數(shù)據(jù)文件和相關(guān)的配置文件。 MyISAM 表是保存成文件的形式,因此相對(duì)比較容易備份,上面提到的幾種方法都可以使用。 Innodb 所有的表都保存在同一個(gè)數(shù)據(jù)文件 ibdata1 中(也可能是多個(gè)文件,或者是獨(dú)立的表空間文件),相對(duì)來說比較不好備份,免費(fèi)的方案可以是拷貝數(shù)據(jù)文件、備份 binlog,或者用 mysqldump。 mysqldump 備份 mysqldump 是采用 SQL 級(jí)別的備份機(jī)制,它將數(shù)據(jù)表導(dǎo)成 SQL 腳本文件,在 不同的 MySQL 版本之間升級(jí)時(shí)相對(duì)比較合適,這也是最常用的備份方法。 還原 用 mysqldump 備份出來的文件是一個(gè)可以直接倒入的 SQL 腳本,有兩種方法可以將數(shù)據(jù)導(dǎo)入。 1. 直接用 mysql 客戶端 例如: /usr/local/mysql/bin/mysql uyejr pyejr db_name 37 2. 用 SOURCE 語法 其實(shí)這不是標(biāo)準(zhǔn)的 SQL 語法,而是 mysql 客戶端提供的功能,例如: SOURCE /tmp/。 這里需要指定文件的絕對(duì)路徑,并且必須是 mysqld 運(yùn)行用戶 (例如 nobody)有權(quán)限讀取的文件。 mysqlhotcopy 備份 mysqlhotcopy 是一個(gè) PERL 程序,最初由 Tim Bunce編寫。它使用 LOCK TABLES、 FLUSH TABLES 和 cp 或 scp 來快速備份數(shù)據(jù)庫。它是備份數(shù)據(jù)庫或單個(gè)表的最快的途徑,但它只能運(yùn)行在數(shù)據(jù)庫文件(包括數(shù)據(jù)表定義文件、數(shù)據(jù)文件、索引文件)所在的機(jī)器上。mysqlhotcopy 只能用于備份 MyISAM,并且只能運(yùn)行在 類 Unix 和 NetWare 系統(tǒng)上。 mysqlhotcopy 支持一次性拷貝多個(gè)數(shù)據(jù)庫,同時(shí)還支持正則表達(dá)。 還原 mysqlhotcopy 備份出來的是整個(gè)數(shù)據(jù)庫目錄,使用時(shí)可以直接拷貝到 mysqld 指定的 datadir (在這里是 /usr/local/mysql/data/)目錄下即可,同時(shí)要注意權(quán)限的問題,如下例: rootcp rf db_name /usr/local/mysql/data/ rootchown R nobody:nobody /usr/local/mysql/data/ (將 db_name 目錄的屬主改成 mysqld 運(yùn)行用戶 ) 38 SQL 語法備份 備份 BACKUP TABLE 語法其實(shí)和 mysqlhotcopy 的工作原理差不多,都是鎖表,然后拷貝數(shù)據(jù)文件。它能實(shí)現(xiàn)在線備份,但是效果不理想,因此不推薦使用。它只拷貝表結(jié)構(gòu)文件和數(shù)據(jù)文件,不同時(shí)拷貝索引文件,因此恢復(fù)時(shí)比較慢。 例子: BACK TABLE tbl_name TO 39。/tmp/db_name/39。 注意,必須要有 FILE 權(quán)限才能執(zhí)行本 SQL,并且目錄 /tmp/db_name/ 必須能被 mysqld 用戶可寫,導(dǎo)出的文件不能覆蓋已經(jīng)存在的文件,以避免安全問題。 SELECT INTO OUTFILE 則是把數(shù)據(jù)導(dǎo)出來成為普通的文本文件,可以自定義字段間隔的方式,方便處理這些數(shù)據(jù)。 例子: SELECT * INTO OUTFILE 39。/tmp/db_name/39。 FROM tbl_name。 注意,必須要有 FILE 權(quán)限才能執(zhí)行本 SQL,并且文件 /tmp/db_name/ 必須能被 mysqld 用戶可寫,導(dǎo)出的文件不能覆蓋已經(jīng)存在的文件,以避免安全問題。 恢復(fù) 用 BACKUP TABLE 方法備份出來的文件,可以運(yùn)行 RESTORE TABLE 語句來恢復(fù)數(shù)據(jù)表。 例子: 39 RESTORE TABLE FROM 39。/tmp/db_name/39。 權(quán)限要求類似上面所述。 用 SELECT INTO OUTFILE 方法備份出來的文件,可以運(yùn)行 LOAD DATA INFILE 語句來恢復(fù)數(shù)據(jù)表。 直接備份數(shù)據(jù)文件 相較前幾種方法,備份數(shù)據(jù)文件最為直接、快速、方便,缺點(diǎn)是基本 上不能實(shí)現(xiàn)增量備份。為了保證數(shù)據(jù)的一致性,需要在靠背文件前,執(zhí)行以下 SQL 語句: FLUSH TABLES WITH READ LOCK。 也就是把內(nèi)存中的數(shù)據(jù)都刷新到磁盤中,同時(shí)鎖定數(shù)據(jù)表,以保證拷貝過程中不會(huì)有新的數(shù)據(jù)寫入。這種方法備份出來的數(shù)據(jù)恢復(fù)也很簡單,直接拷貝回原來的數(shù)據(jù)庫目錄下即可。 注意,對(duì)于 Innodb 類型表來說,還需要備份其日志文件,即 ib_logfile* 文件。因?yàn)楫?dāng) Innodb 表損壞時(shí),就可以依靠這些日志文件來恢復(fù)。 小結(jié) 復(fù)習(xí) 思考題 參考書 數(shù)據(jù)庫備份是很重 要的。如果定期做好備份,這樣就可以在發(fā)生系統(tǒng)崩潰時(shí)恢復(fù)數(shù)據(jù)到最后一次正常的狀態(tài),把損失減小到最少。 MySQL的表的三種類型 教材:《 mysql實(shí)用教程 》 《 mysql入門很簡單》清華大學(xué)出版社 Mysql數(shù)據(jù)庫應(yīng)用 課程 Mysql用戶管理 授課教師 40 名稱 授課班級(jí) 授課時(shí)數(shù) 2 授課方式 理論課 授課重點(diǎn)、難點(diǎn) 權(quán)限表 賬戶管理 權(quán)限管理 授課內(nèi)容、教具與時(shí)間分配 MySQL服務(wù)器通過 MySQL權(quán)限表來控制用戶對(duì)數(shù)據(jù)庫的訪問, MySQL權(quán)限表存放在 mysql數(shù)據(jù)庫里,由 mysql_install_db腳本初始化。這些 MySQL權(quán)限表分別 user, db, table_priv,columns_priv和 host。下面分別介紹一下這些表的結(jié)構(gòu)和內(nèi)容: user權(quán)限表:記錄允許連接到服務(wù)器的用戶帳號(hào)信息,里面的權(quán)限是全局級(jí)的。 db權(quán)限表:記錄各個(gè)帳號(hào)在各個(gè)數(shù)據(jù)庫上的操作權(quán)限。 table_priv權(quán)限表:記錄數(shù)據(jù)表級(jí)的操作權(quán)限。 columns_priv權(quán)限表:記錄數(shù)據(jù)列級(jí)的操作權(quán)限。 host權(quán)限表:配合 db 權(quán)限表對(duì)給定主機(jī)上數(shù)據(jù)庫級(jí)操作權(quán)限作更細(xì)致的控制。這個(gè)權(quán)限表不受 GRANT和 REVOKE語句的影響。 新建賬戶: mysql GRANT ALL PRIVILEGES ON *.* TO 39。monty39。@39。localhost39。 IDENTIFIED BY 39。monty39。 WITH GRANT OPTION。 授予用戶 monty一切權(quán)限 mysql GRANT USAGE ON *.* TO 39。gxj39。@39。localhost39。 identified by 39。520202039。創(chuàng)建用戶 gxj,但不授予任何權(quán)限,相當(dāng)于空賬戶。 刪除賬戶: 需以如 root等管理員權(quán)限進(jìn)入 MySQL mysqluse mysql mysqlselect * from user。 //查看所有賬戶 要?jiǎng)h除某個(gè)賬戶,只需刪除 mysql表 user中對(duì)應(yīng)的記錄,如刪除 39。cap39。@39。localhost39。的用 41 戶: mysqldelete from user where Host=39。localhost39。 and User=39。cap39。 賬戶密碼修改: 如 root身份的管理員修改其他賬戶的密碼,首先進(jìn)入 mysql,如修改用戶 cap的密碼 mysqlset password for 39。cap39。@39。localhost39。=password(39。520202039。)。 還可以在全局級(jí)別使用 GRANT USAGE語句 (在 *.*)來指定某個(gè)賬戶的密碼而不影響賬戶當(dāng)前的權(quán)限: mysql GRANT USAGE ON *.* TO 39。cap39。@39。localhost39。 IDENTIFIED BY 39。520202039。 一般情況下最好使用上述方法來指定密碼,你還可以直接修改 user表: mysql UPDATE user SET Password = PASSWORD(39。custom39。) WHERE Host = 39。localhost39。 AND User = 39。custom39。 mysql FLUSH PRIVILEGES。 最后一句 mysql FLUSH PRIVILEGES。不可少,否則更改不起作用。 普通用戶無權(quán)利修改其他用戶的密碼,但可修改自身的密碼,出可采用以上方法外,還可簡化,如用戶 cap修改自身的密碼 mysqlset password for 39。cap39。@39。localhost39。=password(39。520202039。)。 簡化: mysqlset password=password(39。520202039。)。 (修改密碼均采用 password函數(shù)加密。使用 grant語句不用 password函數(shù),是因?yàn)?grant語句能夠自行加密。) 修改賬戶名稱: 一般來說沒必要修改賬戶名稱,當(dāng)然硬要修改的話也 可以,同樣只要進(jìn)入 mysql,修改 mysql的 user表即可,在此不詳述。 限制賬戶資源 42 在 MySQL較高版本中 ,你可以為具體賬戶限制下面的服務(wù)器資源: 賬戶每小時(shí)可以發(fā)出的查詢數(shù) 賬戶每小時(shí)可以發(fā)出的更新數(shù) 賬戶每小時(shí)可以連接服務(wù)器的次數(shù) 創(chuàng)建賬戶的同時(shí)限制賬戶資源,如: mysql GRANT ALL privileges ON cap.* TO 39。cap39。@39。localhost39。 IDENTIFIED BY 39。520202039。 WITH MAX_QUERIES_PER_HOUR 20 //限制每小時(shí)查詢次數(shù) MAX_UPDATES_PER_HOUR 10 //限制每小時(shí)更新數(shù)據(jù)庫的次數(shù)
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1