程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

數據目錄

編輯:關於MYSQL數據庫
       數據庫是一個復雜而又關鍵的系統,為確保系統安全、高效運行,需熟悉數據庫內部的運作機制,掌握各種維護工具,並做好日常的管理工作。下面列舉幾項主要工作職責:

服務器的關閉和啟動;

管理用戶帳號;

管理日志文件;

數據庫備份恢復;

數據庫優化;

確保數據庫數據安全;

數據庫軟件升級。

數據目錄
數據目錄是用來存放數據表和相關信息的地方,是數據庫的核心。在MySQL中的數據目錄根據不同平台的有一些差異:

在UNIX/Linux系統上,如果用源碼編譯安裝,數據目錄的位置默認是在/usr/local/MySQL/var中;

在UNIX/Linux系統上,如果用二進制發行版安裝,數據目錄的位置默認是在/usr/local/MySQL/data中;

在Windows系統上,數據目錄的位置默認是在c:/MySQL/data中;

   
在服務器啟動時,可用--datadir=dir_name來指定數據目錄,也可把它寫到配置文件中。

我們還可用命令向服務器查詢數據目錄的位置,數據目錄的變量名是datadir,如:

% MySQLadmin variables如果在一台機器上同時運行多個服務器,則可根據端口的不時來查詢每個服務器的數據目錄,如:

% MySQLadmin --host=127.0.0.1 --port=port_number variables如果--host是localhost,系統則會用一個UNIX套接字去連接數據庫服務器,這時要使用--socket選項,所以查詢語句變成:

% mysqladmin --host=localhost --socket=/path/to/socket variablesMySQL> SHOW VARIABLES LIKE 'datadir';在Windows NT平台上可以使用“.”作為一條命名管道連接的主機名,用--socket選項給出命名管道的名字,如:

c:\ mysqladmin --host=. --socket=pipe_name variables配置文件的中[MySQLd]段中的datadir=/path/to/datadir設置也可查詢到數據目錄。

在MySQLd程序的幫助信息裡也有程序編譯時默認的數據目錄信息,可用以下命令顯示:

% MySQLd --help數據目錄是存放數據文件的地方,每個數據庫對應目錄的不同文件。InnoDB數據表由於用表空間來管理數據庫,所以就沒這種對應關系。但也是保存在數據目錄中的,在數據目錄除保存數據庫文件外,還可能會保存以下幾類文件:

服務器的配置文件,my.cnf;

服務器的進程ID(PID)文件;

服務器的日志文件和狀態文件,這些文件對管理數據庫有重要的價值;

DES密鑰文件或服務器的SSL證書與密鑰文件。

數據目錄中的所有數據庫全部由服務器(MySQLd)來管理,客戶端不直接操作數據。服務器是客戶使用數據的唯一通道。

在MySQL中,每個數據庫其實就是在數據目錄下一個子目錄,show databases命令相當於列出數據目錄中的目錄清單。create database db_name命令會在數據目錄下新建一個db_name的目錄,以存放數據庫的數據文件。所以我們也可下面的shell命令方式來建立一個空數據庫:

% cd datadir
% mkdir db_name
% chmod u=rwx,go-rwx db_name
同理,刪除數據庫drop database db_name也就是刪除數據目錄中一個名為db_name的目錄及目錄中的數據表文件。我們也可用shell這進行操作:

% cd datadir
% rm -rf db_name
   
比較shell方式與drop database方式,drop database db_name命令不能刪除db_name目錄中創建的其它非數據表文件;由於InnoDB是表空間來管理數據表,所以不能用rm或del命令刪除InnoDB的數據表。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved