MySQL5.7在CentOS7下安裝,配置,調優
1、解除安裝系統自帶的 mariadb-lib [[email protected] ~]# rpm -qa | grep mariadb mariadb-libs-5.5.44-2.el7.centos.x86_64 [[email protected] ~]# rpm -e mariadb-libs-5.5.44-2.el7.centos.x86_64 --nodeps
2、下載mysql5.7.16 rpm安裝包,官網最新的mysql安裝包是mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar下載地址
然後解壓 [[email protected]_node_1 src]# tar -xvf mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar mysql-community-libs-compat-5.7.16-1.el7.x86_64.rpm mysql-community-devel-5.7.16-1.el7.x86_64.rpm mysql-community-minimal-debuginfo-5.7.16-1.el7.x86_64.rpm mysql-community-libs-5.7.16-1.el7.x86_64.rpm mysql-community-common-5.7.16-1.el7.x86_64.rpm mysql-community-embedded-compat-5.7.16-1.el7.x86_64.rpm mysql-community-test-5.7.16-1.el7.x86_64.rpm mysql-community-embedded-devel-5.7.16-1.el7.x86_64.rpm mysql-community-server-minimal-5.7.16-1.el7.x86_64.rpm mysql-community-server-5.7.16-1.el7.x86_64.rpm mysql-community-client-5.7.16-1.el7.x86_64.rpm mysql-community-embedded-5.7.16-1.el7.x86_64.rpm
3、安裝 依次執行(幾個包有依賴關係,所以執行有先後)下面命令安裝 [[email protected] ~]# rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm [[email protected] ~]# rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm [[email protected] ~]# rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm [[email protected]
如果在安裝rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm的時候報錯如下: [[email protected]_node_1 src]# rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm warning: mysql-community-server-5.7.16-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY error: Failed dependencies: libaio.so.1()(64bit) is needed by mysql-community-server-5.7.16-1.el7.x86_64 libaio.so.1(LIBAIO_0.1)(64bit) is needed by mysql-community-server-5.7.16-1.el7.x86_64 libaio.so.1(LIBAIO_0.4)(64bit) is needed by mysql-community-server-5.7.16-1.el7.x86_64 net-tools is needed by mysql-community-server-5.7.16-1.el7.x86_64
這個報錯的意思是需要安裝libaio包和net-tools包:可以yum安裝一下,安裝 libaio-0.3.107-10.el6.x86_64.rpm,
4、資料庫初始化 mysqld --initialize --user=mysql
修改mysql預設埠號3306 vim /etc/my.cnf [mysqld] port=3307 max_allowed_packet = 40M back_log = 510 key_buffer_size = 256M sort_buffer_size = 6M read_buffer_size = 4M join_buffer_size = 8M max_connections = 768 innodb_buffer_pool_size = 1500M query_cache_size = 512M query_cache_type = 1
(上面的引數設定末預設值大,可以提高mysql效能。引數檢視說明: 快取命中狀態看show status like '%Qcache%'中的: Qcache_hits:表示有多少次命中快取。我們主要可以通過該值來驗證我們的查詢快取的效果。數字越大,快取效果越理想。 檢視普通引數用show variables like ,例如:show variables like 'back_log';)
安裝rpm包後檢視mysql的root的密碼
[[email protected]_node_1 src]# cat /var/log/mysqld.log 2016-12-07T04:41:58.028558Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2016-12-07T04:41:58.315188Z 0 [Warning] InnoDB: New log files created, LSN=45790 2016-12-07T04:41:58.355114Z 0 [Warning] InnoDB: Creating foreign key constraint system tables. 2016-12-07T04:41:58.418448Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 7cc98831-bc37-11e6-a263-000c29f902dc. 2016-12-07T04:41:58.419935Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened. 2016-12-07T04:41:58.420558Z 1 [Note] A temporary password is generated for [email protected]: )1r3gi,hjgQa 現在啟動mysql資料庫systemctl restart mysqld.service
然後 mysql -uroot -p 這裡的密碼為上面檔案中的密碼:)1r3gi,hjgQa
登陸後要修改密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY '[email protected]';
允許root使用者遠端登入mysql資料庫
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '[email protected]' WITH GRANT OPTION;
FLUSH PRIVILEGES;