MySQL 慢查詢詳解

mysql 面試題

常見面試題:如何從一個大項目中,迅速定位執(zhí)行速度慢的 SQL 語句?此時可以使用慢查詢定位 SQL 語句。慢查詢,故名思義,就是在日志中記錄運行比較慢的 SQL 語句,是指所有執(zhí)行超過 long_query_time 參數(shù)設(shè)定的時間閾值的 SQL 語句查詢

辰風(fēng)沐陽 閱讀 1112 2022-05-14

mysql 數(shù)據(jù)庫設(shè)計三大范式

mysql

設(shè)計表的依據(jù),按照范式設(shè)計出來的表,不會出現(xiàn)數(shù)據(jù)的冗余。數(shù)據(jù)庫的設(shè)計范式是數(shù)據(jù)庫設(shè)計所需要滿足的規(guī)范,滿足這些規(guī)范的數(shù)據(jù)庫是簡潔的、結(jié)構(gòu)清晰的;反之則是亂七八糟,不僅會給開發(fā)人員制造麻煩,還可能存儲了大量冗余數(shù)據(jù)

辰風(fēng)沐陽 閱讀 1059 2022-05-14

MyISAM 和 InnoDB 的區(qū)別

mysql 面試題

MySQL 的存儲引擎其實就是如何存儲數(shù)據(jù)、如何建立索引、如何查詢和更新數(shù)據(jù)等技術(shù)的實現(xiàn)方法。事務(wù)和外鍵:MyISAM 強調(diào)的是性能,它的執(zhí)行速度比 InnoDB 更快,但是不支持事務(wù)和外鍵功能;InnoDB 支持事務(wù)和外鍵等高級數(shù)據(jù)庫功能

辰風(fēng)沐陽 閱讀 1068 2022-05-08

mysql 函數(shù): find_in_set()、instr()

mysql 數(shù)據(jù)庫

在文章表 article 中有個標簽字段 tags,一個文章可以有多個標簽, 標簽 id: 1 html 2 css 3 javascript, tags 以 1,2,3 的格式存儲標簽,那么我們可以使用 find_in_set 查找出 tags 中有 1 的標簽

辰風(fēng)沐陽 閱讀 1248 2021-12-18

MySQL5.7 中使用 group by 報錯 this is incompatible with sql_mode=only_full_group_by

mysql TP6.0

這個錯誤發(fā)生在mysql 5.7 版本及以上版本,5.7版本默認的sql_mode配置中包含 `ONLY_FULL_GROUP_BY`,這個配置嚴格執(zhí)行了"SQL92標準"。解決方案: 去除 sql_mode 中的 only_full_group_by

辰風(fēng)沐陽 閱讀 1577 2021-08-28

修改數(shù)據(jù) update 命令

mysql

如果我們需要修改或更新 MySQL 中的數(shù)據(jù),我們可以使用 SQL UPDATE 命令來操作。沒有修改條件時將修改表中所有的數(shù)據(jù),需要注意;replace 函數(shù):替換某個字段中的某個字符,比如 password = replace(password, 'bcd', '666')

辰風(fēng)沐陽 閱讀 1549 2020-10-10

刪除數(shù)據(jù) delete、truncate 命令

mysql

delete 刪除數(shù)據(jù)的速度慢,truncate 刪除數(shù)據(jù)的速度快。delete 支持事務(wù),可以進行事務(wù)回滾;truncate 不支持事務(wù),不能執(zhí)行事務(wù)回滾。delete 支持帶條件的刪除,可以只刪除某一條數(shù)據(jù);truncate 則不行,只能用于刪除表中的所有數(shù)據(jù)。delete 刪除不會重置自動增長(auto_increment),truncate 則會重置自動增長的值,重新以 1 開始。delete 可以觸發(fā) `觸發(fā)器`,truncate 則不行

辰風(fēng)沐陽 閱讀 1418 2020-10-10

MySQL 添加數(shù)據(jù) insert 命令及優(yōu)化

mysql

不指定字段名,所有字段必須給值;指定部分字段添加,沒有被指定的字段 `要么會自動增長,要么允許為 null,要么有默認值`;添加一條數(shù)據(jù)時也可以用 `insert ... set`,該方式不能用于一次添加多條數(shù)據(jù);添加多條數(shù)據(jù):values(數(shù)據(jù)1),(數(shù)據(jù)2)

辰風(fēng)沐陽 閱讀 1878 2020-10-07

MySQL 修改密碼

mysql

MySQL5.7 修改用戶密碼:方法一 ALTER USER root@'localhost' IDENTIFIED BY '123456'; 方法二 set password for root@localhost = '123456'; 方法三:mysqladmin -u用戶名 -p[密碼] password [新密碼]

辰風(fēng)沐陽 閱讀 1530 2020-09-26

MySQL 數(shù)據(jù)庫備份和還原數(shù)據(jù)庫 mysqldump、source

mysql

備份指定的數(shù)據(jù)庫,默認包含表數(shù)據(jù):mysqldump -u用戶名 -p[密碼] 庫名 > 文件路徑。導(dǎo)出指定數(shù)據(jù)庫中的所有表的結(jié)構(gòu),不要表中的數(shù)據(jù):mysqldump -u用戶名 -p[密碼] -d 庫名 > 文件路徑

辰風(fēng)沐陽 閱讀 1642 2020-09-22