1 / 25

MySQL 資料庫執行環境管理

MySQL 資料庫執行環境管理. ▊ Outlines. MySQL 資料庫系統的環境簡介 my.ini 簡介與製作 設定管理者的密碼. ▊ MySQL 資料庫系統的環境簡介. 安裝完 MySQL 5 資料庫後,在安裝目錄下有一些檔案夾,比較重要的檔案夾簡介如下: bin :包含了幾個在 MySQL 資料庫系統中,所會執行到的公用程式,例如: mysql 、 mysqldump 、 mysqladmin 、 mysqld-nt 。 data :是 MySQL 存放資料處。存放著所建立的各個 資料庫 及 資料庫結構相關設定檔 ; 而每個資料庫都是以 獨立目錄 各自存放。

ardara
Download Presentation

MySQL 資料庫執行環境管理

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MySQL資料庫執行環境管理

  2. ▊Outlines • MySQL資料庫系統的環境簡介 • my.ini簡介與製作 • 設定管理者的密碼

  3. ▊MySQL資料庫系統的環境簡介 • 安裝完MySQL 5資料庫後,在安裝目錄下有一些檔案夾,比較重要的檔案夾簡介如下: • bin:包含了幾個在MySQL資料庫系統中,所會執行到的公用程式,例如:mysql、mysqldump、 mysqladmin、mysqld-nt。 • data:是 MySQL 存放資料處。存放著所建立的各個資料庫及資料庫結構相關設定檔; 而每個資料庫都是以獨立目錄各自存放。 • share:MySQL 所產生的訊息檔 (message) 及錯誤檔 (error log) 都放在這個目錄。

  4. 如何登入MySQL資料庫系統 • 若是以超級使用者 “root”登入: • 由 “程式集”  “MySQL” 可找到 “MySQL Command Line Client”,啟動後直接輸入root的密碼即可。 • 若是以一般使用者登入 (超級使用者root亦可): • 由 “程式集”  “附屬應用程式” 可找到 “命令提示字元” • 啟動 “命令提示字元” 後,將命令路徑設定到公用程式 “mysql”所在之目錄。以本系統為例 (本系統是安裝AppServ): C:\AppServ\MySQL\bin> • 輸入指令 mysql –u 使用者名稱–p,按Enter後再輸入密碼即可。 • -u: 是指定使用者,在這我們輸入使用者名稱 • -p: 是在按Enter後,再要求輸入密碼,我們輸入所給定的密碼

  5. MySQL資料庫系統的預設資料庫 • MySQL 5資料庫系統安裝後,會有兩個主要的預設資料庫 (不同的安裝模式可能會多出其它的預設資料庫): • mysql: 負責紀錄整個MySQL 的使用權限資料,包含了host、user、db、tables_priv、colimns_priv和func…等資料表。 • test: 測試用的空資料庫,不包含任何資料。

  6. 預設資料庫 “mysql” 中,六個主要的表格意義如下: • user表格:包含了有關使用者對MySQL資料庫伺服器使用權限設定的資料。管理有哪些人可以從哪些電腦連到MySQL伺服器系統。 • db表格:儲存使用者對特定資料庫的權限。管理哪些使用者能存取哪些資料庫。 • host表格:主要擴充db表格的內容,提供允許連線的主機名稱 。 • tables_priv表格:管理哪些使用者能存取資料庫的哪些表格。 • columns_priv表格:管理哪些使用者能存取資料表的哪些欄位。 • func表格:儲存使用者自行定義的函式資訊。

  7. 以表格 “db” 為例:

  8. ▊ my.ini簡介與製作 • MySQL資料庫系統在啟動時,會透過此設定檔來存取與掌握一些環境參數。而DBA也可藉此檔來調校MySQL Server的環境,使得MySQL伺服器能達到最佳化的執行環境。 • 這個檔案在安裝MySQL資料庫系統的過程中,會依當時環境自動的設定。在不同的作業系統中: • Windows: my.ini • Linux: my.cnf

  9. my.ini在哪? 不同的my.ini檔之範本,可用在不同的系統環境

  10. 部份系統環境調校參數簡介 • key_buffer_size • 將此參數設定為較大,對於來自所有用戶任務的讀寫處理能力,將有所助益;但若設定的太大,反而會拖累系統的執行效能,因此對於key_buffer_size容量的設定,必須求取平衡。 • 本電腦該參數的預設值為10MB,可大約抓系統主機記憶體容量的1/5 (如:假設伺服器具2GB記憶體,則以400MB為基準),以加大key_buffer_size。 • max_connections • 系統承受之同時上線使用人數。可依系統所能承受之情況做調整。 • sort_buffer • 可調整系統在面對所有需要被排序的任務之緩衝區,從而提升ORDER BY或GROUP BY的行進速度 • 本電腦該參數的預設值僅256KB,一般可考慮提高到2MB~16MB

  11. 可直接取用之my.ini相關範例 • my-small.ini (<=64MB) • my-medium.ini (32MB~64MB) • my-large.ini (512MB) • my-huge.ini (1GB~2GB) • my-innodb-heave-4G.ini (4GB, InnoDB only, ACID, Heavy Queries)

  12. 製作my.ini • 若沒有my.ini或原本的my.ini有問題,可自已用記事本建立!! • 選好某一個my***.ini範本,將其內容複製到my.ini檔即可。

  13. MySQL系統調校範例:設定最大連線數 • 用記事本打開my.ini • 找到 max_connections=100 (此為系統預設的最大連線數) • 將100修改成50 • 存檔並重啟MySQL

  14. ▊設定管理者的密碼 • 為了管理MySQL資料庫,我們必需建立至少一個MySQL的帳號。在安裝MySQL 5 (或AppServ) 時,我們已建立了一個超級使用者 “root”。若要改變root的密碼,可以使用下列指令: set password for root@localhost = password(“新密碼”); • 上述指令是將位於名為“localhost”的主機上之“root”使用者的密碼做更新。 • 當我們要再次登錄時,只要輸入新密碼就可以登錄了。

  15. 忘記root的密碼? • 可利用下列步驟處理: • 停止MySQL 5的服務 • 在my.ini檔中的[mysqld]段落,加上 skip_grant_tables • 重新啟動MySQL 5的服務 • 輸入指令 mysql –u root,不用密碼,按Enter後即可進入 • 使用mysql這個預設的資料庫 • 輸入指令以修改預設資料庫mysql中的user資料表 • 再次停止MySQL 5的服務 • 在my.ini檔中的[mysqld]段落,刪除 skip_grant_tables • 重新啟動MySQL 5的服務

  16. 停止MySQL 5的服務

  17. 在my.ini檔的[mysqld]段落加上 skip_grant_tables 加上 skip_grant_tables

  18. 重新啟動MySQL 5的服務

  19. 輸入指令 mysql –u root • 輸入指令 mysql –u root,不用密碼,按Enter後即可進入

  20. 使用mysql這個預設的資料庫

  21. 輸入指令以修改預設資料庫mysql中的user資料表 • 修改user資料表中,user名稱為’root’且host為’localhost’這個帳號的密碼。此時因權限關係不能用前面所教的設定密碼之指令。 update user set password = password(‘123456789’) where user=‘root’ and host=‘localhost’;

  22. 再次停止MySQL 5的服務 • 跳出MySQL資料庫,且再次停止MySQL 5的服務。

  23. 在my.ini檔中的[mysqld]段落刪除 skip_grant_tables • 刪除後並存檔。 刪除 skip_grant_tables

  24. 重新啟動MySQL 5的服務 • 重新啟動MySQL DB,並利用剛剛設定的新密碼進入即可。

  25. 使用 “show processlist” 就可以看到現在線上有多少人使用,有哪些process正在執行。 • INFORMATION_SCHEMA是虛擬資料庫,其中保存著關於MySQL資料庫伺服器所維護的所有其他資料庫的訊息。在INFORMATION_SCHEMA中,有數個唯讀資料表。它們實際上是視圖 (View),而不是基本資料表。

More Related