文章出處
文章列表
MySQL 5.7主要特性
- 更好的性能
對于多核CPU、固態硬盤、鎖有著更好的優化,每秒100W QPS已不再是MySQL的追求,下個版本能否上200W QPS才是用戶更關心的。
- 更好的InnoDB存儲引擎
- 更為健壯的復制功能
復制帶來了數據完全不丟失的方案,傳統金融客戶也可以選擇使用。MySQL數據庫。此外,GTID在線平滑升級也變得可能。 - 更好的優化器
優化器代碼重構的意義將在這個版本及以后的版本中帶來巨大的改進,Oracle官方正在解決MySQL之前最大的難題。 - 原生JSON類型的支持
- 更好的地理信息服務支持
InnoDB原生支持地理位置類型,支持GeoJSON,GeoHash特性 - 新增sys庫
以后這會是DBA訪問最頻繁的庫MySQL 5.7
安裝準備
安裝依賴包
1
|
[root@snails ~]# yum -y install gcc gcc-c++ ncurses ncurses-devel cmake bison
|
下載相應源碼包
1
|
[root@snails ~]# wget https://sourceforge.net/projects/boost/files/boost/1.65.0/boost_1_65_0.tar.gz/
[root@snails ~]# wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.19.tar.gz
|
也可以使用官方下載鏈接 進行下載。
新建MySQL用戶和用戶組
1
|
[root@snails ~]# groupadd -r mysql && useradd -r -g mysql -s /sbin/nologin -M mysql
|
預編譯
1
|
[root@snails ~]# tar -zxvf boost_1_65_0.tar.gz
|
編譯安裝
1
|
[root@snails mysql-5.7.19]# make -j `grep processor /proc/cpuinfo | wc -l`
|
設置啟動腳本,開機自啟動
1
|
[root@snails mysql-5.7.19]# ls -lrt /usr/local/mysql
|
配置文件
1
|
/etc/my.cnf,僅供參考
|
添加mysql的環境變量
1
|
[root@snails mysql-5.7.19]# echo -e '\n\nexport PATH=/usr/local/mysql/bin:$PATH\n' >> /etc/profile && source /etc/profile
|
初始化數據庫
1
|
[root@snails mysql-5.7.19]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
|
注:
- MySQL之前版本mysql_install_db是在mysql_basedir/script下
- MySQL 5.7直接放在了mysql_install_db/bin目錄下。
- “–initialize”已廢棄,生成一個隨機密碼(~/.mysql_secret)
- “–initialize-insecure”不會生成密碼
- “–datadir”目錄下不能有數據文件
啟動數據庫
1
|
[root@snails mysql-5.7.19]# systemctl start mysqld
|
查看MySQL服務進程和端口
1
|
[root@snails mysql-5.7.19]# ps -ef | grep mysql
|
設置數據庫root用戶密碼
MySQL和Oracle數據庫一樣,數據庫也默認自帶了一個 root 用戶(這個和當前Linux主機上的root用戶是完全不搭邊的),我們在設置好MySQL數據庫的安全配置后初始化root用戶的密碼。配制過程中,一路輸入 y 就行了。這里只說明下MySQL5.7.13版本中,用戶密碼策略分成低級 LOW 、中等 MEDIUM 和超強 STRONG 三種,推薦使用中等 MEDIUM 級別!
1
|
[root@snails mysql-5.7.19]# mysql_secure_installation
|
常用操作
將MySQL數據庫的動態鏈接庫共享至系統鏈接庫
一般MySQL數據庫還會被類似于PHP等服務調用,所以我們需要將MySQL編譯后的lib庫文件添加至當前Linux主機鏈接庫 /etc/ld.so.conf.d/
下,這樣MySQL服務就可以被其它服務調用了。
1
|
[root@snails mysql-5.7.19]# ldconfig |grep mysql
|
創建其它MySQL數據庫用戶
1
|
[root@snails mysql-5.7.19]# mysql -uroot -p
|
1
|
mysql>CREATE DATABASE `tonnydb` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
|
文章列表
全站熱搜