mysql 儲存引擎和資料匯入匯出

2021-08-27 11:32:17 字數 1376 閱讀 5930

儲存引擎

mysql服務軟體自帶的功能程式,處理表的處理器

每種不同的儲存引擎有不同的功能和資料儲存方式

show engine 檢視引擎

修改引擎

停止服務 修改配置檔案

[mysqld]

default-stroage-engine=儲存引擎名稱

alter table 表名 engine=引擎名 修改儲存引擎

myisam儲存引擎

支援表級鎖

不支援事務 事務會滾 外來鍵

每個表對應三個表檔案 .frm表結構資料 .myi表資料 .myd表的index索引資訊

innodb

支援表級鎖

支援事務 事務回滾 外來鍵

.from 表結構資料

.ibd表資料和index索引

事務:以此sql操作從建立連線到操作完成斷開的連線的訪問過程稱作事務

支援事務的可以作事務會滾:以此sql操作有任意一步沒有執行成功會恢復所有操作。(對innodb存淳引擎的表訪問時,必須任意一步操作鬥成功,才能完成操作。)

事務特性

show variables like 「autocommit」;

set autocommit=off;

rollback 資料回滾 未提交可以回滾

commit 提交資料

鎖粒度(鎖表的範圍)

表級鎖

讀鎖(共享鎖) 當對一張執行查詢操作時 會加讀鎖

寫鎖(排他鎖或互斥鎖) 當對一張表執行寫操作時 會加寫鎖

執行查詢操作多的表適合使用myisam儲存引擎,節省系統資源

執行寫操作多的表適合使用innodb儲存引擎,這樣併發訪問量大

資料匯入

設定預設搜尋路徑 配置檔案加入 secure_file_priv=」 」

拷貝檔案到搜尋路徑下

建立表結構

-load data infile 「目錄名/檔名」

into table 表名

fields terminated by 「分隔符」

lines teminated by 「換行分隔符」

注意:新建表的字段 分隔符都要與被匯入檔案的內容對上

mysql> load data infile 「/var/lib/mysql-files/passwd」 into table db4.user fields terminated by 「:」 lines terminated by 「\n」;

資料匯出

sql查詢 into outfile 「目錄名/檔名」

fields terminated by 「分隔符」

lines terminated by 「換行分隔符」

MySQL儲存引擎和資料型別

花點時間適當地設計專案的表結構是成功的關鍵。對於這個我深有體會,上個專案,在設計資料庫時沒有經過討論,最後設計出來的資料庫雖然有關聯關係的表有外來鍵約束關係,但是兩個字段居然不一樣,在使用中各種困難,估計只要設計資料庫的人才能明白,所以設計好資料庫時很關鍵的。myisam 表無法處理事務,這意味著應...

mysql複製資料兵插入 mysql匯入匯出

匯出 1.將資料庫mydb匯出到e mysqlmydb.sql檔案中 開啟開始 執行 輸入cmd 進入命令列模式 c mysqldump h localhost u root p mydb e mysqlmydb.sql 然後輸入密碼,等待一會匯出就成功了,可以到目標檔案中檢查是否成功。2.將資料庫...

mysql的匯入匯出命令 mysql匯入匯出命令

一 匯出資料庫用mysqldump命令 注意mysql的安裝路徑,即此命令的路徑 1 匯出資料和表結構 mysqldump u使用者名稱 p密碼 資料庫名 資料庫名.sql usr local mysql bin mysqldump uroot p abc abc.sql 敲回車後會提示輸入密碼 2...