mysql基礎學習之一之建立表所對應的的檔案
使用不同的引擎建立了不同表後發現沒有對應的檔案
檢視mysql資料庫預設使用的儲存引擎mysql> show variables like '%storage_engine%';
+------------------------+--------+
| Variable_name | Value |
+------------------------+--------+
| default_storage_engine | InnoDB |
| storage_engine | InnoDB |
+------------------------+--------+
2 rows in set (0.00 sec)
使用INNODB的引擎建立
mysql> create table room_innodb(
-> room_id int primary key auto_increment,
-> room_no char(3)
-> );
Query OK, 0 rows affected (0.02 sec)
使用Myisam的引擎建立
mysql> create table room(
-> room_id int primary key auto_increment,
-> room_no char(3)
-> ) engine myisam character set utf8;
Query OK, 0 rows affected (0.07 sec)
在安裝目錄下檢視對應的檔案,卻沒有
在這種情況下需要檢視my.ini檔案
#Path to the database root
datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"
發現實際儲存檔案的路徑如上
在這個檔案路徑下發現存在了相應的檔案
如果是用INNODB的引擎建立的表,只有一個對應的檔案room_innodb.frm
ibdata1 這個檔案是儲存所有建立表引擎為innodb的所有儲存資料檔案和索引檔案的集合檔案
如果是用myisam的引擎建立的表,卻有3個檔案生成,分別是room.frm,room.MYD,room.MYI
.frm是儲存表定義檔案(儲存表結構檔案),
.MYD是資料庫資料檔案(儲存資料的檔案),
.MYI是資料庫索引檔案(儲存索引的檔案)。
innodb & myisam 的比較
區別
儲存的檔案方式不同:
myisam是一個表對應三個檔案
innodb是一個表對應一個檔案(使用innodb儲存引擎都使用表空間ibdata1來儲存資料和索引)
選擇儲存引擎的依據
第一 效能
第二 功能(查詢多的需要使用myisam引擎)
同時每建立一個DATABASE也會自動的生成一個資料夾
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/20976446/viewspace-1585960/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 零基礎學習 Python 之檔案Python
- Linux基礎學習——檔案基礎Linux
- mysql基礎概念之socket檔案MySql
- MySQL學習基礎之起航篇MySql
- 學習mysql之後的一點總結(基礎)MySql
- FastAPI基礎之 表單和檔案操作ASTAPI
- PostgreSQL的表檔案以及TOAST表檔案對應關係SQLAST
- Mahout學習之命令列建立序列檔案命令列
- java基礎學習之一:物件和類Java物件
- 在 mysql 下 建立新的資料庫和對應的表MySql資料庫
- 【0基礎學爬蟲】爬蟲基礎之檔案儲存爬蟲
- HBase學習之一: 建立hive和hbase關聯表Hive
- opencv學習之基礎OpenCV
- 檔案包含-基於Pikachu的學習
- 資料結構基礎學習之線性表資料結構
- python 基礎之檔案Python
- [Python]學習基礎篇:檔案和目錄Python
- Linux基礎學習——檔案與目錄管理Linux
- 【學習日記】oracle之表空間、資料檔案、控制檔案Oracle
- 【Elasticsearch學習】之基礎概念Elasticsearch
- 深度學習基礎之 Dropout深度學習
- java基礎學習之--XMLJavaXML
- MySQL學習筆記【基礎篇】MySql筆記
- mysql 基礎命令入門學習MySql
- java基礎的學習Java
- 大資料學習之路——MySQL基礎(一)——MySQL的基礎知識與常見操作大資料MySql
- Linux基礎之檔案管理Linux
- django | 根據 model 建立對應的表Django
- 數學英語的基礎對學習Python重要嗎?Python
- 01.Django學習之安裝,建立專案,傳參,MySQL資料庫,靜態檔案配置和模板的使用DjangoMySql資料庫
- 分割槽表學習之一
- MySQL學習筆記之一MySql筆記
- java基礎的學習之引數的變化使用Java
- python基礎 之 Django框架建立專案的方法入門PythonDjango框架
- 視訊編解碼學習之一:理論基礎
- .net基礎學習:ASP.NET的Web.Config檔案中的元素ASP.NETWeb
- java基礎學習:JavaWeb之ServletJavaWebServlet
- pandas學習之Python基礎Python