史萊姆論壇

返回   史萊姆論壇 > 教學文件資料庫 > 程式 & 網頁設計技術文件
忘記密碼?
註冊帳號 論壇說明 標記討論區已讀

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


 
 
主題工具 顯示模式
舊 2006-01-24, 04:01 AM   #1 (permalink)
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 學習使用資料庫MySQL

一、為什麼使用MySQL:MySQL是一種高效能的資料庫,因為如下原因。它可以和市場下任何同類的產品競爭。

l 速度。MySQL本身並不複雜。http://www.mysql.com/information/crash-me.php上可以找到MySQL和其他資料庫產品進行競爭的資料的相關資訊

l 可昇級性。MySQL能夠同時處理無限數量的擁護和5億個紀錄

l 簡單性。MySQL的核心是一個小而快速的資料庫,面向那些瞭解資料庫工作的人員,是他們能夠有效的工作和編寫進階功能。

l 價值:MySQL是遵循GPL傳輸協定的自由軟體,你可以下載並且使用它。

l 可移植性。因為MySQL是開放來源碼的自由軟體,可以執行於所有的平台,如果不能執行於你的平台,你可以修改、編譯來源碼。

二、MySQL缺少什麼

MySQL所保護的都是關於權限的,不是關於市場的。MySQL能做什麼和不能做什麼是我們在使用之前需要清楚的。

l 圖形界面:MySQL開始提供類似MS SQL Server的界面,尚處於測試中

l 事務處理:MySQL不支持事務處理,但是2000年5月9日的發行說明中,MySQL宣稱版本3.23.15「試驗性支持」Sleepy Software的Berkely DB資料庫。版本3.23.25完全實現了這一個功能。

l 儲存於程序:MySQL沒有儲存於程序機制。MySQL開發團體的「to do」列表中有一種儲存於程序機制,它將包含在版本4中。

l 觸發器:觸發器是一種程序,通常存在於一種嵌入式指令碼語言如Zend或者Python中。有消息說這種觸發器會套用於版本4中,使用Zend指令碼引擎。

l 參照完整性:將來支持

l 記錄等級鎖定:MySQL不支持記錄等級鎖定。將來會改善,這都是開放來源碼的力量。

l 子查詢:MySQL不支持子查詢。但是通過它提供的C語言接頭可以很容易的彌補。

l 視圖:MySQL不支持視圖。但是它在MySQL開發團體的to do列表中。

很清楚地看到MySQL對於轉向Linux的平台套用的將來的意義。

三、MySQL資料庫系統的安裝

這裡只討論在Linux系統下的MySQL資料庫系統的安裝,可以通過RPM包安裝和tar包安裝,這裡只討論RPM方式安裝Binary。

通過RPM包安裝,你需要下面三個文件:

1、 MySQL-3.23.25-1.i386.rpm這是一個伺服器部分。它包含接受請求和返回結果的實際資料庫伺服器

2、 MySQL-client-3.23.25-1.i386.rpm這是客戶端部分。

3、 MySQL-devel-3.23.25-1.i386.rpm.從這個文件中,你需要一個C API文件。

安裝程序如下:首先安裝伺服器部分,然後安裝客戶端部分,最後需要安裝C程序開發需要的文件。

1、 安裝伺服器:

按鍵輸入如下指令:#rpm –ivh MySQL-3.23.25-1.i386.rpm

2、 安裝客戶端

按鍵輸入如下指令:#rpm –ivh MySQL-client-3.23.25-1.i386.rpm

4、 安裝C開發文件

按鍵輸入如下指令:#rpm –ivh MySQL-devel-3.23.25-1.i386.rpm

5、 卸載MySQL: 首先需要關閉伺服器

#mysqladmin shutdown

#rpm –e –vv MySQL-3.23.25-1

#rpm –e –vv MySQL-client-3.23.25-1

6、 安裝帳號管理MySQL伺服器:從RPM安裝。Mysql用戶帳號會自動新增。這是一個用來執行MySQL的服務的用戶。

更改mysqladmin密碼:為了增強安全性,需要為mysql的根用戶改變密碼,這可以通過下面的兩個指令來完成

%mysqladmin –u root –p password 『new-password』

或者

%mysqladmin –u root –h servername –p password 『new-password』

四、啟動和停止MySQL伺服器Daemon

使用RPM安裝,MySQL伺服器dameon自動為你啟動和停止,RedHat的系統在/etc/init.d/mysqld的MySQL伺服器指令碼。

如果由於某些原因,你需要啟動MySQL dameon,是用如下指令

%safe_mysqld –user=mysql &

要關閉MySQL伺服器dameon,傳送入下指令:

%mysqladmin shutdown

五、套用於MySQL的工具和程序

除了MySQL伺服器(mysqld)。MySQL程序組包含大量的程序,來管理資料庫和資料庫伺服器。當通過RPM安裝MySQL時,這些程序被安裝。Isamchk和myisamchk是驗證和重修資料庫表和文件的工具。Mysqlaccess 用於使用權、更改和復原用戶許可權限。Mysqladmin是一種進階系統管理工具,如新增資料庫和關閉資料庫等。Mysqldump用於在緊急關頭倒出資料和制作備份表,它在SQL insert語句中輸出資料,所使用的方法能夠將輸出文件反饋到MySQL伺服器,並且行也將被安裝載入。Mysqlimport是一種整體安裝載入工具,而mysqlshow顯示關於資料庫對象的訊息(如標)。

1. isamchk:檢視和修理被毀壞的表

如果由於某些未知的原因,是資料庫表被毀壞,這個工具能夠對它進行修補。容納基本資料的資料檔案叫做索引順序存取法(Index Sequential Access Method,ISAM)文件。

MySQL在3.23和更高版本中將MyISAM文件格式作為了預設選項。需要使用myisamchk工具,而不是isamchk。ISAM表結構被MyISAM結構取代。將來ISAM將不被支持。下面重點介紹一下MyISAM文件結構:

ISAM舊文件結構:資料庫中的每一個表實際上是三個文件的組合:*.ISD文件包含資料,*.ISM文件包含關於資料結構的訊息,比如密鑰和索引,*.frm文件包含表的結構。

檢視/var/lib/mysql/test_db/目錄中發現三個文件

tb1_books_1.frm 88bytes

tb1_books_1.MYI 1024 bytes

tb1_books_1.MYD 8604 bytes

*.frm和舊的文件結構相同,*.MYI文件和*.ISM文件一致,並且*.MYD文件符合舊的*.ISD文件。

2. myisamchk

這是MyISAM儲存於格式的isamchk的更新版本工具,它的基本用法如下所顯示:

myisamchk [OPTIONS] tables..MYI

利用如下指令可以得到你的系統中可以使用的全部選項列表



3. mysqlaccess這個工具最值得討論的就是-howto指令行,當你執行一下指令的時候,你就得到一個如何使用這個工具的例子:

%mysqlaccess –howto

mysqlaccess的使用方法相當簡單:

mysqlaccess [host [user [db]]] OPTIONS.。如果沒有提供選項,那麼就必須提供user和db。如果沒有指定主機,則用本機伺服器。

4. mysqladmin

這個指令的一般用法如下:

mysqladmin [OPTION] command,選項是標準的Unix指令方式:-v用於詳細說明,-t=XX指連線到伺服器的超時時間。使用指令

%mysqladmin -?| more可以看到所有的列表。Command部分用於規則的條件。下面是常用的command

指令如下(後面的文字是說說明)


Create db_name
新增一個叫做db_name的資料庫

Drop db_name
移除資料庫名稱

Flush-logs
清除所有日誌

Flush-privileges或者reload
重載使用權表,或者執行相同操作的指令

Ping
檢視mysqld是否啟動

Shutdown
關閉資料庫

Status
檢視伺服器的狀態





5. mysqldump

這是一個用於制作備份、移植或者重載資料庫的工具。指令用法有以下兩種:

%mysqldump [OPTIONS] database [tables]

或者

%mysqldump [OPTIONS]。在使用第二種方法時,你必須提供-databases或者—all-databases選項

6. mysqlimport

這是MySQL的大量輸入工具,它類似於MS SQL Server的bcp工具。它是LOAD DATA語句的指令行接頭,用法如下:

%mysqlimport [OPTIONS] db_name file_name

7. mysqlshow

mysqlshow 指出了關於資料庫、表或者列的訊息,它是show語句的指令行接頭

用法:

%mysqlshow [OPTIONS] [database_name [table_name [column]]]

8. myisampack

myisampack可以把一個MyISAM表壓縮到一個相對小的空間。他有點像gzip,只是它執行於表中。它執行於.MYD文件,並且把它壓縮到一個很小的尺寸。執行myisampack之後,你可以檢視表,但是不能更新表。
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1625 篇, 收花: 3188 次
有 4 位會員向 psac 送花:
alife0504 (2007-09-19),h0810119 (2007-07-01),longlie (2007-10-21),wulihua (2006-09-07)
感謝您發表一篇好文章
舊 2006-09-06, 08:12 AM   #2 (permalink)
長老會員
榮譽勳章
UID - 126403
在線等級: 級別:19 | 在線時長:476小時 | 升級還需:4小時級別:19 | 在線時長:476小時 | 升級還需:4小時級別:19 | 在線時長:476小時 | 升級還需:4小時級別:19 | 在線時長:476小時 | 升級還需:4小時
註冊日期: 2004-04-05
文章: 100
精華: 0
現金: 10564 金幣
資產: 15832 金幣
預設

感謝您提供的好文章
最近剛好有需要
mrelin4 目前離線  
送花文章: 751, 收花文章: 17 篇, 收花: 30 次
向 mrelin4 送花的會員:
h0810119 (2007-07-01)
感謝您發表一篇好文章
 


主題工具
顯示模式

發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 02:04 AM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2018, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1