欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql數(shù)據(jù)庫保存路徑查找方式

 更新時間:2023年05月12日 10:29:42   作者:四哥在努力  
這篇文章主要介紹了mysql數(shù)據(jù)庫保存路徑查找方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教方法

mysql數(shù)據(jù)庫保存路徑查找

  • sqlyon-創(chuàng)建的表 保存在哪里?
  • 數(shù)據(jù)庫保存路徑
  • sql 8.0

1、找到sql配置文件ini

2、不要完全復(fù)制 只復(fù)制到 C:\ProgramData\MySQL\MySQL Server 8.0\my.ini 即可

3、找到配置文件my.ini打開,Ctrl+f,搜索datadir,找到Data目錄,Data目錄即存儲位置

mysql之?dāng)?shù)據(jù)目錄解讀

MySQL8的數(shù)據(jù)目錄

1. mysql8的主要目錄

可以使用 find / -name mysql命令查看mysql的所有目錄。

1.1 數(shù)據(jù)庫文件的存放目錄

mysql數(shù)據(jù)庫文件的存放路徑為:/var/lib/mysql

mysql程序在啟動時會到文件系統(tǒng)的某個目錄下加載一些文件,之后再運行過程中產(chǎn)生的數(shù)據(jù)也會存儲到這個目錄下的某些文件中,這個路徑就稱為數(shù)據(jù)目錄。

數(shù)據(jù)目錄對應(yīng)著一個系統(tǒng)變量datadir ,我們使用客戶端與服務(wù)器建立連接之后查看這個系統(tǒng)變量的值即可。

1.2 命令目錄

/usr/bin/usr/sbin

它里面存儲了許多關(guān)于控制客戶端程序和服務(wù)器程序的命令,許多可執(zhí)行文件比如mysql,mysqld,mysqld_safe等。而數(shù)據(jù)目錄是用來存儲mysql在運行過程中產(chǎn)生的數(shù)據(jù)。

1.3 配置文件目錄

/usr/share/mysql-8.0/etc/my.cnf

2. 數(shù)據(jù)庫和文件系統(tǒng)

2.1 默認(rèn)數(shù)據(jù)庫

mysql自帶4個系統(tǒng)數(shù)據(jù)庫:

  • mysql

mysql系統(tǒng)自帶的核心數(shù)據(jù)庫,存儲了mysql的用戶賬戶和權(quán)限信息,一些存儲過程、事件的定義信息,一些運行過程中產(chǎn)生的日志信息,一些幫助信息以及時區(qū)信息等。

  • information_schema

這個數(shù)據(jù)庫保存著mysql服務(wù)器所有其他數(shù)據(jù)庫的信息。比如有那些表、那些視圖、那些觸發(fā)器、那些列、那些索引。這些數(shù)據(jù)并不是真實的用戶數(shù)據(jù),而是描述性信息,有時候也稱為元數(shù)據(jù)。在該庫中提供了一些以innodb_sys開頭的表,用于表示內(nèi)部系統(tǒng)表。

  • performation_schema

主要保存mysql服務(wù)器運行過程中的一些狀態(tài)信息,可以用來監(jiān)控mysql服務(wù)的各類指標(biāo)。包括統(tǒng)計最近執(zhí)行了那些語句,在執(zhí)行過程的各個階段都花費了多長時間,內(nèi)存的使用情況等信息。

  • sys

該數(shù)據(jù)庫主要通過視圖的形式把information_schemaperformation_schema結(jié)合起來,幫助開發(fā)人員監(jiān)控mysql的技術(shù)性能。

2.2 數(shù)據(jù)庫在文件系統(tǒng)中的表示

使用create database語句創(chuàng)建一個數(shù)據(jù)庫時,在文件系統(tǒng)上實際發(fā)生了什么呢?

每個數(shù)據(jù)庫都對應(yīng)數(shù)據(jù)目錄下的一個子目錄,每當(dāng)新創(chuàng)建一個數(shù)據(jù)庫時,mysql會做如下兩點:

  • (1)在數(shù)據(jù)目錄下創(chuàng)建一個和數(shù)據(jù)庫名同名的子目錄。
  • (2)在該子目錄下創(chuàng)建一個db.opt的文件(5.7及之前版本),這個文件中包含了該數(shù)據(jù)庫的各種數(shù)據(jù),比如該數(shù)據(jù)庫的字符集和比較規(guī)則。

這個數(shù)據(jù)目錄下除了information_schema數(shù)據(jù)庫外,其他數(shù)據(jù)庫在該目錄下都有對應(yīng)子目錄。

2.3 表在文件系統(tǒng)中的表示

我們的數(shù)據(jù)其實都是以記錄的形式插入到表中,每個表的信息其實可以分為兩種:

  • 表結(jié)構(gòu)的定義
  • 表中數(shù)據(jù)

2.3.1 innodb存儲引擎

  • 1.表結(jié)構(gòu)

innodb在數(shù)據(jù)目錄下對應(yīng)的數(shù)據(jù)庫子目錄下創(chuàng)建一個專門用于描述表結(jié)構(gòu)的文件,文件名為表名.frm,這個文件的格式在不同平臺上都是相同的,以二進制格式存儲。 

  • 2.表中數(shù)據(jù)和索引

系統(tǒng)表空間

默認(rèn)情況下innodb會在數(shù)據(jù)目錄下創(chuàng)建一個ibdata1,大小為12M的文件。這個文件就是對應(yīng)的系統(tǒng)表空間。該文件可以自擴展,當(dāng)不夠用時會自己增加文件大小。

可以通過修改my.cnf來讓系統(tǒng)表空間對應(yīng)多個文件,或者改名字:

innodb_data_file_path = data1:512M;data2:512M:autoextend

這樣mysql啟動之后就會創(chuàng)建兩個512M大小的文件作為系統(tǒng)表空間,其中autoextend表示自擴展。

在mysql5.5.7到mysql5.6.6之間的各個版本中,我們的表中數(shù)據(jù)都會默認(rèn)存儲到這個系統(tǒng)表空間。 

獨立表空間

在mysql5.6.6以及之后的版本,innodb并不會默認(rèn)的把各個表的存儲到系統(tǒng)表空間,而是為每一個表建立一個獨立表空間。會在該表數(shù)據(jù)庫子目錄下創(chuàng)建一個表名.ibd的文件 

設(shè)置

我們可以自己指定使用系統(tǒng)表空間還是獨立表空間來存儲。

這個功能由啟動參數(shù)innodb_file_pre_table控制,比如說我們希望將表數(shù)據(jù)都存儲到系統(tǒng)表空間時,可以在配置文件中配置:

  • 3. mysql8.0

mysql8.0版本后,沒有opt和frm文件,數(shù)據(jù)都放在ibd文件中。

2.3.2 MyISAM存儲引擎

  • 1.表結(jié)構(gòu)

在存儲表結(jié)構(gòu)方面,myisam和innodb一樣,也是在數(shù)據(jù)目錄下對應(yīng)的數(shù)據(jù)庫子目錄下創(chuàng)建了一個專門用于描述表結(jié)構(gòu)的文件:表明.frm 

  • 2.表中數(shù)據(jù)和索引

  • 3. mysql8.0

2.4 視圖在文件系統(tǒng)中的表示

視圖其實是虛擬的表,所以在存儲視圖的時候不需要存儲真實的數(shù)據(jù),只需要把它的結(jié)構(gòu)存儲起來就行了。指揮存儲一個視圖名.frm文件。

2.5 其他文件

除了上邊說的用戶自己存儲的數(shù)據(jù)外,數(shù)據(jù)目錄下還包括為了更好運行程序的一些額外文件,主要包括:

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論