亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

1、背景

安裝mysql之后,在安裝目錄下會(huì)有一個(gè)data目錄,我們創(chuàng)建的數(shù)據(jù)庫(kù)、創(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ù)目錄

可以通過(guò)sql命令來(lái)查找數(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ù)庫(kù):

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

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

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

mysql> create database test;

然后可以發(fā)現(xiàn)data目錄下多了一個(gè)test的空目錄,里面啥也沒(méi)有,每創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),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è)頁(yè),我們的數(shù)據(jù)都在頁(yè)上。

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

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

接下來(lái)再創(chuàng)建一個(gè)MyISAM存儲(chǔ)引擎的表來(lái)看看有什么區(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ù)庫(kù)的用戶記錄是存儲(chǔ)在哪些目錄哪些文件里的,注意不同版本的數(shù)據(jù)庫(kù)存儲(chǔ)的文件是有區(qū)別的,不過(guò)都大差不差,了解一下就行。

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

相關(guān)文章

  • 徹底刪除MySQL步驟介紹

    徹底刪除MySQL步驟介紹

    大家好,本篇文章主要講的是徹底刪除MySQL步驟介紹,感興趣的趕緊來(lái)看看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • MySQL索引類(lèi)型Normal、Unique和Full Text的講解

    MySQL索引類(lèi)型Normal、Unique和Full Text的講解

    今天小編就為大家分享一篇關(guān)于MySQL索引類(lèi)型Normal、Unique和Full Text的講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • 詳解MySQL中SlowLog的配置方法(圖文)

    詳解MySQL中SlowLog的配置方法(圖文)

    mysql 日志系統(tǒng)上線有段時(shí)間了,前端在慢慢切站點(diǎn)過(guò)來(lái)寫(xiě)入,未雨綢繆 diy了套 mysql 監(jiān)控工具
    2014-02-02
  • mysql存儲(chǔ)過(guò)程原理與用法詳解

    mysql存儲(chǔ)過(guò)程原理與用法詳解

    這篇文章主要介紹了mysql存儲(chǔ)過(guò)程,結(jié)合圖文與實(shí)例形式較為詳細(xì)的分析了mysql存儲(chǔ)過(guò)程基本概念、原理、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2020-04-04
  • Centos7.5安裝mysql5.7.24二進(jìn)制包方式部署

    Centos7.5安裝mysql5.7.24二進(jìn)制包方式部署

    這篇文章主要介紹了Centos7.5安裝mysql5.7.24二進(jìn)制包方式部署,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-12-12
  • mysql時(shí)間相減如何獲取秒值

    mysql時(shí)間相減如何獲取秒值

    這篇文章主要介紹了mysql時(shí)間相減如何獲取秒值問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • MySQL查詢字段為NULL、不為NULL的數(shù)據(jù)問(wèn)題

    MySQL查詢字段為NULL、不為NULL的數(shù)據(jù)問(wèn)題

    介紹了MySQL查詢字段為NULL和不為NULL的數(shù)據(jù)時(shí)需要注意的幾點(diǎn),包括查詢語(yǔ)句的編寫(xiě)和NULL與其他字符的操作,通過(guò)實(shí)際操作對(duì)比,指出使用IS NOT NULL可以正確查詢到非NULL字段的數(shù)據(jù)
    2025-02-02
  • 與MSSQL對(duì)比學(xué)習(xí)MYSQL的心得(八)--插入 更新 刪除

    與MSSQL對(duì)比學(xué)習(xí)MYSQL的心得(八)--插入 更新 刪除

    這一篇《與MSSQL對(duì)比學(xué)習(xí)MYSQL的心得(八)》將會(huì)講解MYSQL的插入、更新和刪除語(yǔ)句
    2014-08-08
  • mysql下怎樣運(yùn)行腳本以運(yùn)行niuzi.sql為例

    mysql下怎樣運(yùn)行腳本以運(yùn)行niuzi.sql為例

    mysql下運(yùn)行腳本,有兩種方法,都是在命令行下進(jìn)行的,需要的朋友可以記錄下
    2014-07-07
  • MySQL一些常用高級(jí)SQL語(yǔ)句詳解

    MySQL一些常用高級(jí)SQL語(yǔ)句詳解

    對(duì)?MySQL?數(shù)據(jù)庫(kù)的查詢,除了基本的查詢外,有時(shí)候需要對(duì)查詢的結(jié)果集進(jìn)行處理。例如只取?10?條數(shù)據(jù)、對(duì)查詢結(jié)果進(jìn)行排序或分組等等,今天就給大家分享MySQL一些常用高級(jí)SQL語(yǔ)句,感興趣的朋友一起看看吧
    2022-06-06

最新評(píng)論