當創建一個 innodb 數據庫時最好以命令行方式來運行 mysql 服務 mysqld ,而不是從 safe_mysqld 或 windows 服務。當從命令行方式運行服務時可以看到建立過程。
現在運行 mysql 服務,innodb 將建立數據文件和日志文件。innodb 將顯示下列所示的信息:
[email protected]:~/mysql-3.23.48/sql> mysqld 020204 23:17:12 innodb: the first specified data file /dr2/tmp/heikki/data/ibdata1 did not exist: innodb: a new database to be created! innodb: setting file /dr2/tmp/heikki/data/ibdata1 size to 20 mb innodb: database physically writes the file full: wait... 020204 23:17:16 innodb: data file /dr2/tmp/heikki/data/ibdata2 did not exist: new to be created innodb: setting file /dr2/tmp/heikki/data/ibdata2 size to 200 mb innodb: database physically writes the file full: wait... 020204 23:17:41 innodb: data file /dr2/tmp/heikki/data/ibdata3 did not exist: new to be created innodb: setting file /dr2/tmp/heikki/data/ibdata3 size to 1000 mb innodb: database physically writes the file full: wait... 020204 23:21:37 innodb: log file ./ib_logfile0 did not exist: new to be created innodb: setting log file ./ib_logfile0 size to 10 mb innodb: database physically writes the file full: wait... 020204 23:21:39 innodb: log file ./ib_logfile1 did not exist: new to be created innodb: setting log file ./ib_logfile1 size to 10 mb innodb: database physically writes the file full: wait... 020204 23:21:41 innodb: log file ./ib_logfile2 did not exist: new to be created innodb: setting log file ./ib_logfile2 size to 10 mb innodb: database physically writes the file full: wait... innodb: doublewrite buffer not found: creating new innodb: doublewrite buffer created innodb: creating foreign key constraint system tables innodb: foreign key constraint system tables created 020204 23:21:45 innodb: started mysqld: ready for connections
現在一個新的 innodb 數據庫被建立了。你可以通過 mysql 的客戶端程序(比如 mysql)連接 mysql 服務器。當通過 mysqladmin shutdown 關閉 mysql 服務時,innodb 輸出如下所示:
在 windows nt 和 2000 下可以將 mysql 服務安裝為 windows 系統服務。這樣在計算機啟動時 mysql 服務會自動啟動或在命令行方式下輸入 ms-dos 命令 net start mysql 或從操作系統的服務菜單中啟動。
如果以系統服務方式運行 mysql,可以通過 ms-dos的 net stop mysql 命令或操作系統的服務菜單中關閉服務。你同樣可以讓操作系統退出前自動關閉 mysql。在低于 mysql 3.23.47 版本的系統中,windows 操作系統僅僅只等待一段時間讓 innodb 完全關閉,如果限止時間超過將殺死數據服務線程。那在下一次 innodb 啟動不得不不進行一個崩潰修復。從 mysql version 3.23.48 開始,操作系統將等待 innodb 完全關閉。
如果你的操作系統沒有為 innodb 完全關閉提供足夠的時間,最安全的辦法就是在 ms-dos 命令行下運行 mysql 服務,并用 mysqladmin shutdown 關閉服務。
在 windows nt (但 windows 2000 無些問題)下,當計算機關閉時,有一個可能發生的問題就是 windows nt 默認等待 20 秒以關閉一個服務,服務未能關閉將殺死服務線程。可以通過運行注冊表編輯器 /winnt ystem32/regedt32.exe 來修改 hkey_local_machine ystem/currentcontrolset/control 中的 waittokillservicetimeout 鍵值以增加這個默認值。以毫秒為單位給定一個更大的值。