mySQL特點(diǎn):
1.mySQL使用C和C++編寫(xiě),并使用了多種編譯器進(jìn)行測(cè)試,保證源代碼的可移植性
2.mySQL支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng)
3.mySQL為多種編程語(yǔ)言提供了API。這些編程語(yǔ)言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
4.mySQL支持多線程,充分利用CPU資源
5.mySQL優(yōu)化的SQL查詢算法,有效地提高查詢速度
6.mySQL既能夠作為一個(gè)單獨(dú)的應(yīng)用程序應(yīng)用在客戶端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個(gè)庫(kù)而嵌入到其他的軟件中。
7.mySQL提供多語(yǔ)言支持,常見(jiàn)的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。
8.mySQL提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫(kù)連接途徑。
9.提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫(kù)操作的管理工具。
10.mySQL支持大型的數(shù)據(jù)庫(kù)??梢蕴幚?yè)碛猩锨f(wàn)條記錄的大型數(shù)據(jù)庫(kù)。
11.mySQL支持多種存儲(chǔ)引擎。
MySQL數(shù)據(jù)庫(kù) v5.7.21新特性:
1.1)初始化方式的改變及默認(rèn)添加用戶密碼
MySQL默認(rèn)的部署策略發(fā)生了變化,變得更加安全。mysql_install_db棄用了,改用mysqld加–initialize或–initialize-insecure選項(xiàng)來(lái)初始化數(shù)據(jù)目錄。使用–initialize時(shí),MySQL數(shù)據(jù)庫(kù)初始化完成以后,會(huì)產(chǎn)生一個(gè)root@localhost用戶,從MySQL 5.7開(kāi)始,root用戶的密碼不再是空,而是隨機(jī)產(chǎn)生一個(gè)密碼,保存于error log,初次登錄需使用密碼并改變密碼。這也導(dǎo)致了用戶安裝5.7時(shí)發(fā)現(xiàn)的與5.6版本比較大的一個(gè)不同點(diǎn)。
1.2)刪除test庫(kù)及不再創(chuàng)建匿名賬號(hào)
MySQL官方已經(jīng)刪除了test數(shù)據(jù)庫(kù),默認(rèn)安裝完后是沒(méi)有test數(shù)據(jù)庫(kù)的,就算用戶創(chuàng)建了test庫(kù),也可以對(duì)test庫(kù)進(jìn)行權(quán)限控制了,并且不再創(chuàng)建匿名賬戶。
1.3)mysql.user表的改變
mysql.user表新增plugin列,且若某賬戶該字段值為空則賬戶不能使用。從低版本MySQL升級(jí)至MySQL5.7時(shí)要注意該問(wèn)題,且建議DBA將使用mysql_old_password插件的賬戶替換為使用mysql_native_password插件。另外默認(rèn)的用戶密碼字段由Password變成了authentication_string。
1.4)增加密碼過(guò)期策略
數(shù)據(jù)庫(kù)管理員可以制定賬戶密碼自動(dòng)過(guò)期策略,密碼過(guò)期后必須強(qiáng)制進(jìn)行更改。
1.5)增加用戶鎖定限制
數(shù)據(jù)庫(kù)管理員可以鎖定/解鎖賬戶來(lái)進(jìn)行更好的登錄控制,對(duì)應(yīng)的,mysql.user表中新增account_locked列來(lái)表示鎖定狀態(tài)。版本升級(jí)過(guò)程中要注意該問(wèn)題。
1.6)默認(rèn)開(kāi)啟連接加密
MySQL可以自動(dòng)創(chuàng)建SSL、RSA證書(shū)和Key文件來(lái)支持安全連接,但前提是Server用OpenSSL編譯,默認(rèn)情況下客戶端是使用安全連接服務(wù)器的。
1.7)增加密碼復(fù)雜度檢查插件validate_password
如果使用YUM安裝MySQL的話,默認(rèn)會(huì)裝載這個(gè)插件,這個(gè)插件就是對(duì)用戶密碼復(fù)雜度(字母大小寫(xiě)、數(shù)字、特殊字符、密碼長(zhǎng)度等)的一個(gè)檢查,如果不滿足設(shè)定的復(fù)雜度要求則不允許創(chuàng)建用戶。
安裝配置教程:
mysql安裝教程|mysql 5.7安裝配置詳細(xì)圖解