儲存引擎
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...