最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql中的數(shù)據(jù)目錄用法及說明

 更新時(shí)間:2025年06月26日 15:57:37   作者:在成都搬磚的鴨鴨  
這篇文章主要介紹了mysql中的數(shù)據(jù)目錄用法及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

1、背景

安裝mysql之后,在安裝目錄下會(huì)有一個(gè)data目錄,我們創(chuàng)建的數(shù)據(jù)庫、創(chuàng)建的表、插入的數(shù)據(jù)都是存儲(chǔ)在這個(gè)目錄中,可以大概了解一下這個(gè)目錄下是怎么存儲(chǔ)數(shù)據(jù)的。

2、版本

mysql> status
--------------
E:\mysql_install\mysql\bin\mysql.exe  Ver 8.0.40 for Win64 on x86_64 (MySQL Community Server - GPL)

3、數(shù)據(jù)目錄

可以通過sql命令來查找數(shù)據(jù)目錄,命令如下:

mysql> show variables like 'datadir';
+---------------+------------------------------+
| Variable_name | Value                        |
+---------------+------------------------------+
| datadir       | E:\mysql_install\mysql\Data\ |
+---------------+------------------------------+
1 row in set, 1 warning (0.00 sec)

再看看這個(gè)目錄有哪些文件:

$ ls E:\\mysql_install\\mysql\\Data\\
'#ib_16384_0.dblwr'   A030414-NC.err          A030414-NC-bin.000003   ca.pem            ib_buffer_pool   mysql.ibd             server-cert.pem   undo_001
'#ib_16384_1.dblwr'   A030414-NC.pid          A030414-NC-bin.index    ca-key.pem        ibdata1          performance_schema/   server-key.pem    undo_002
'#innodb_redo'/       A030414-NC-bin.000001   A030414-NC-slow.log     client-cert.pem   ibtmp1           private_key.pem       sys/
'#innodb_temp'/       A030414-NC-bin.000002   auto.cnf                client-key.pem    mysql/           public_key.pem        

看一下有哪些數(shù)據(jù)庫:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

查詢結(jié)果有4個(gè)可以發(fā)現(xiàn)除了data目錄下除了沒有名為information_schema的目錄,其它三個(gè)數(shù)據(jù)庫都存在同名的目錄,其它三個(gè)數(shù)據(jù)庫的數(shù)據(jù)就存在對(duì)應(yīng)的同名目錄里,只是information_schema比較特殊。

接下來我們創(chuàng)建一個(gè)新的數(shù)據(jù)庫:

mysql> create database test;

然后可以發(fā)現(xiàn)data目錄下多了一個(gè)test的空目錄,里面啥也沒有,每創(chuàng)建一個(gè)數(shù)據(jù)庫,data目錄下就會(huì)多一個(gè)同名的目錄:

$ ll E:\\mysql_install\\mysql\\Data\\test
total 0

再創(chuàng)建一張InnoDB的表看看:

mysql> use test;
Database changed
mysql> CREATE TABLE test1
    -> (
    ->     id INT AUTO_INCREMENT PRIMARY KEY,
    ->     str1 VARCHAR(255) NOT NULL DEFAULT '',
    ->     str2 VARCHAR(255),
    ->     str3 CHAR(5),
    ->     str4 VARCHAR(255),
    ->     str5 CHAR(10),
    ->     INDEX idx_str1 (str1),
    ->     INDEX idx_str4_str5 (str4, str5)
    -> ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
Query OK, 0 rows affected (0.05 sec)

可以發(fā)現(xiàn)test目錄下產(chǎn)生了一個(gè)test1.ibd的二進(jìn)制文件:

$ ll E:\\mysql_install\\mysql\\Data\\test\\
total 192
-rw-r--r-- 1 xxx 1049089 147456  1月 15 10:11 test1.ibd

我們的表結(jié)構(gòu)信息和插入此表的數(shù)據(jù)都存在這個(gè)文件中,這個(gè)文件也可以叫做獨(dú)立表空間,里面存儲(chǔ)多個(gè),我們的數(shù)據(jù)都在頁上。

以前版本的mysql默認(rèn)使用的是系統(tǒng)表空間,也就是所有表數(shù)據(jù)和信息存儲(chǔ)到一個(gè)公共的地方,對(duì)應(yīng)著數(shù)據(jù)目錄data下的ibdata1文件,這個(gè)文件大小和路徑還有名稱都是可以在配置文件修改的。

有的版本還會(huì)把表結(jié)構(gòu)信息單獨(dú)存儲(chǔ)到表名.frm里,和存儲(chǔ)數(shù)據(jù)文件分開。

接下來再創(chuàng)建一個(gè)MyISAM存儲(chǔ)引擎的表來看看有什么區(qū)別:

mysql> CREATE TABLE test2
    -> (
    ->     id INT AUTO_INCREMENT PRIMARY KEY,
    ->     str1 VARCHAR(255) NOT NULL DEFAULT '',
    ->     str2 VARCHAR(255),
    ->     str3 CHAR(5),
    ->     str4 VARCHAR(255),
    ->     str5 CHAR(10),
    ->     INDEX idx_str1 (str1),
    ->     INDEX idx_str4_str5 (str4, str5)
    -> ) ENGINE = MyISAM DEFAULT CHARSET = utf8;
Query OK, 0 rows affected, 1 warning (0.02 sec)

查看data目錄下test目錄下有哪些文件:

$ ll -a E:\\mysql_install\\mysql\\Data\\test\\
total 212
drwxr-xr-x 1 xxx 1049089      0  1月 15 10:57 ./
drwxr-xr-x 1 xxx 1049089      0  1月 15 09:59 ../
-rw-r--r-- 1 xxx 1049089 147456  1月 15 10:41 test1.ibd
-rw-r--r-- 1 xxx 1049089      0  1月 15 10:57 test2.MYD
-rw-r--r-- 1 xxx 1049089   4096  1月 15 10:57 test2.MYI
-rw-r--r-- 1 xxx 1049089   7733  1月 15 10:57 test2_366.sdi

發(fā)現(xiàn)生成了與test2相關(guān)的3個(gè)文件,這3個(gè)文件的作用分別為:

  • test2.MYD:存放數(shù)據(jù)信息
  • test2.MYI:存放索引信息
  • test2_366.sdi:存放表結(jié)構(gòu)信息

有的版本表結(jié)構(gòu)信息是存儲(chǔ)在表名.frm文件中。

4、總結(jié)

本文大概講了一下我們插入數(shù)據(jù)庫的用戶記錄是存儲(chǔ)在哪些目錄哪些文件里的,注意不同版本的數(shù)據(jù)庫存儲(chǔ)的文件是有區(qū)別的,不過都大差不差,了解一下就行。

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

相關(guān)文章

最新評(píng)論

新田县| 临桂县| 调兵山市| 高平市| 泊头市| 宾川县| 新兴县| 临沂市| 玉田县| 宜都市| 湖州市| 房产| 利津县| 沽源县| 丹阳市| 台州市| 平谷区| 平舆县| 湖北省| 九江县| 南昌县| 庐江县| 宣威市| 张家界市| 汪清县| 洛南县| 太原市| 张家川| 渭源县| 阿鲁科尔沁旗| 苏尼特左旗| 金山区| 柳州市| 灌阳县| 井陉县| 蕉岭县| 台中市| 镇雄县| 凉山| 封开县| 姚安县|