【MySQL】5.7新特性之二
本系列基於5.7.12 版本來講述MySQL的新特性,從安裝,檔案結構,SQL ,優化 ,運維層面 複製,等幾個方面展開介紹5.7 的新特性和功能,同時也建議大家跟蹤官方blog和文件,以儘快知悉其新的變化。
1 SQL_MODE的變化
官方文件上表述, 5.7 版本預設的SQL_MODE="ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, and NO_ENGINE_SUBSTITUTION" 。而實際上我自己的測試環境中預設新增了 STRICT_TRANS_TABLES 屬性。
STRICT_TRANS_TABLES 意思是說要儲存的欄位的長度大於欄位定義的大小,直接報錯而非像5.6版本以及之前,截斷資料進行儲存,同時丟擲一個warning。注意同一個會話調整 sql_mode 必須退出之後在進入sql_mode才會生效。詳細瞭解SQL_MODE 請移步《sql_mode官方文件》 注意5.7 對於null,'00000000 00:00:00' 這類default值的影響.
2 online ddl支援 rename index name .個人感覺這個功能比較雞肋,通常改變索引名稱的時候 本身索引的結構需要增刪欄位,新建的索引名稱也要修改合適的名稱。
3 新增內建的full text 外掛,支援中文 ,韓文,日文全文索引。
之前的版本 只能依賴單詞之間空格進行分詞,對於依賴於語義分詞而非空格分詞的其他語言種類,5.7 版本的引入支援解析中文,韓文,日文的全文索引--ngram full-text parser解決了該問題。具體請移步《ngram Full-Text Parser》
參考文章
《what is new in MySQL 5.7》
1 SQL_MODE的變化
官方文件上表述, 5.7 版本預設的SQL_MODE="ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, and NO_ENGINE_SUBSTITUTION" 。而實際上我自己的測試環境中預設新增了 STRICT_TRANS_TABLES 屬性。
-
mysql> select @@sql_mode;
-
+--------------------------------------------+
-
| @@sql_mode |
-
+--------------------------------------------+
-
| STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION |
-
+--------------------------------------------+
- 1 row in set (0.00 sec)
2 online ddl支援 rename index name .個人感覺這個功能比較雞肋,通常改變索引名稱的時候 本身索引的結構需要增刪欄位,新建的索引名稱也要修改合適的名稱。
-
mysql> alter table yy rename index idx_name to idx_nm;
-
Query OK, 0 rows affected (0.01 sec)
- Records: 0 Duplicates: 0 Warnings: 0
3 新增內建的full text 外掛,支援中文 ,韓文,日文全文索引。
之前的版本 只能依賴單詞之間空格進行分詞,對於依賴於語義分詞而非空格分詞的其他語言種類,5.7 版本的引入支援解析中文,韓文,日文的全文索引--ngram full-text parser解決了該問題。具體請移步《ngram Full-Text Parser》
參考文章
《what is new in MySQL 5.7》
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28939273/viewspace-2128840/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL 5.7新特性MySql
- MySQL · 特性分析 · MySQL 5.7新特性系列一MySql
- 【MySQL】5.7新特性之一MySql
- 【MySQL】5.7新特性之三MySql
- 【MySQL】5.7新特性之四MySql
- 【MySQL】5.7新特性之五MySql
- 【MySQL】5.7新特性之六MySql
- 【MySQL】5.7新特性之七MySql
- MySQL 5.7 新特性詳解MySql
- MySQL 5.7 新特性大全和未來展望MySql
- 【Mysql】Mysql5.7新特性之-json儲存MySqlJSON
- 【Mysql】mysql5.7新特性之-sys schema的作用MySql
- 【Mysql】MySQL 5.7新特性之Generated Column(函式索引)MySql函式索引
- **Mysql5.7新特性之—– 淺談Sys庫**MySql
- #MySQL# mysql5.7新特性之半同步複製MySql
- MySQL 5.7新特性之線上收縮undo表空間MySql
- MySQL5.7新特性之備份工具mysqlpump的使用MySql
- 關於Mysql5.7高版本group by新特性報錯MySql
- MySQL 5.6, 5.7, 8.0版本的新特性彙總大全MySql
- MySQL 5.7新特性之動態修改innodb_buffer_pool大小MySql
- mysql 5.7 新特性中線上in-place 修改欄位的大小MySql
- MySQL 5.7的主要特性簡介MySql
- 【Mysql】mysql5.7新特性之-並行複製實現原理與調優MySql並行
- MySQL5.7 group by新特性報錯1055的解決辦法MySql
- MySQL5.7新版本的運維,效能和新特性介紹MySql運維
- 【Mysql】mysql公開課之-mysql5.7複製特性MySql
- MySQL 5.7 新特性 共享臨時表空間及臨時表改進MySql
- MySQL 5.7 MyISAM併發插入特性介紹MySql
- MySQL 5.7 online DDL特性介紹MySql
- mysql 5.7中嶄新的 mysql sys schemaMySql
- MySQL 8.0 新特性MySql
- MySQL 5.7 學習心得之安全相關特性MySql
- MySQL 5.7主從新增新從庫MySql
- MySQL5.7在InnoDB層做的一些效能優化和新的特性MySql優化
- MySQL5.6 新效能之二(exchange partitions)MySql
- mysql5.1的新特性MySql
- MySQL 8.0新特性概覽MySql
- MySQL 5.5新特性詳解MySql