MySQL資料目錄的位置

來源:互聯網
上載者:User
mysql|資料|資料目錄     從概念上講,大多數關聯式資料庫系統都是類似的:它們都由一組資料庫組成,且每個資料庫都包含一組表。但是,所有的系統都有自己的管理資料的方法, MySQL也不例外。
    在預設設定時,由MySQL伺服器mysql管理的所有資料都儲存在MySQL資料目錄中。所有的資料庫和提供有關伺服器操作資訊的狀態檔案也儲存在那裡。如果要執行MySQL安裝的管理職責,應該熟悉資料目錄的布局和使用。
    本章包括以下內容:
    怎樣確定資料目錄的位置。需要瞭解庖壞悖員閿行У毓芾砥淠諶蕁?br>     伺服器怎樣組織和提供對它所管理的資料庫和表的訪問。
    在哪裡尋找由伺服器產生的狀態檔案且檔案中包含什麼內容。它們的內容提供了關於伺服器啟動並執行資訊,如果您遇到問題,這些資訊將是有用的。
    如何改變資料目錄或單個資料庫的預設布局或組織。這對於管理系統的磁碟資源分派是重要的─例如,通過在磁碟機中平衡磁碟的活動,或通過利用更多的可用空間將資料重定位到檔案系統中。還可以使用這個知識來計劃新資料庫的布局。
    即使不執行任何MySQL管理職責,也能通過閱讀本章的內容而有所收穫,它決不會影響您對如何運行伺服器有更好的想法。

資料目錄的位置

    預設資料庫的位置編譯在伺服器中。如果您是在一個來源程式分發包中安裝MySQL,典型的預設位置可能是/ us r / l o c a l / v a r;如果在二進位分發包中安裝MySQL,則為/ us r / l o c a l / mysql/d a t a;在RPM 檔案中安裝,為/ v a r / l i b / mysql。
    資料目錄的位置可以在啟動伺服器時通過--datadir = / p a t h / to / dir 明確地指定。如果您想將資料目錄放置在其他地方而非預設的位置,則這個選項是有用的。
    作為一名MySQL管理員,您應該知道資料目錄在哪裡。如果運行多個伺服器,那麼您應該掌握所有資料目錄的位置。但是,如果不知道目錄的位置(或許您正在代替前一位管理員,而他留下的記錄很糟糕),有幾種方法可以用來尋找它:
    可使用mysqladmin 變數直接從伺服器中得到資料目錄路徑名。在UNIX 中,輸出結果類似於如下所示:

    該輸出結果指明了伺服器主機中資料目錄的位置/ us r / l o c a l / v a r。
    在Windows 中,輸出結果類似於如下所示:

    如果正在運行多個伺服器,它們將監聽不同的TCP/IP 連接埠號碼和通訊端。可以通過提供合適的--port 或--socket 選項串連到每個伺服器監聽的連接埠和通訊端上:
    % mysqladmin -- port=port_num variables
    % mysqladmin -- socket=/path/to/socket variables
    mysqladmin 命令可在您串連伺服器的任何一台主機上運行。如果需要串連到遠程主機上的伺服器,則使用--host = host_name 選項:
    % mysqladmin --host=host_name variables
    在Windows 中,您可以購買Windows NT 伺服器,它通過使用--pipe 迫使一個指定的管道串連,並使用--socket = pipe_name 指定該管道的名稱,在該管道上進行監聽。
    c:\>mysqladmin --pipe --socket=pipe_name variables
    可使用ps 來查看任何當前執行mysql進程的命令列。試一試下列的命令(根據您的系統所支援的ps 版本)並尋找顯示在輸出結果中的這些命令的- - d a t a d i r:
    % ps axww | grep mysqld BSD-style ps
    % ps -ef | grep mysqld System V-style ps
    如果系統運行多個伺服器(因為一次發現了多個資料目錄位置),則ps 命令將會特別有用。它的缺點是: ps 必須運行在伺服器的主機上,並且除非--datadir 選項在mysqld 命令列中明確指定,否則將產生無用的資訊。
    如果MySQL從來源程式分發包中安裝,可以檢查其配置資訊以確定資料目錄的位置。例如,在最進階的Makefile 中該位置是可用的。但是,要小心:位置是Makefile 中的變數localstatedir 的值,而不是datadir 的值。同樣,如果分發包定位在NFS 裝配檔案系統中,並且是用於為幾個主機建立MySQL的,則配置資訊反映最近建立分發包的主機。它可能不顯示您感興趣的主機的資料目錄。
    如果前面的任何方法都不成功,可使用find 搜尋資料庫檔案。下列命令將搜尋. f r m(描述)檔案,它是MySQL安裝程式的組成部分:
    % find / -name " *.frm" -print
    在本章的這些例子中,筆者將MySQL資料目錄的位置表示為DATA D I R。您可以將其解釋成為您自己的機器中的資料目錄的位置。

相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。