本文記錄了mysql 5.7.14 安裝配置代碼,具體內容如下
OS: CentOS 6.6
DB: Mysql 5.7.14
1. 下載mysql
cd /tools
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz
2.創建MySQL二進制解壓文件的目錄
mkdir -p /opt/mysql [root@zw-test-db mysql]# cd /tools/ [root@zw-test-db tools]# ll -l mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz -rw-r--r-- 1 root root 642694570 Aug 29 15:02 mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz
3. 解壓到 /opt/mysql 目錄下
[root@zw-test-db tools]# cd /opt/mysql/ [root@zw-test-db mysql]# tar -zxvf /tools/mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz [root@zw-test-db mysql]# mv mysql-5.7.14-linux-glibc2.5-x86_64/ mysql-5.7.14 [root@zw-test-db mysql]# ll drwxr-xr-x 9 7161 31415 4096 Jul 12 21:03 mysql-5.7.14
4. 創建一個軟連接到 /usr/local
[root@zw-test-db mysql]# cd /usr/local/ [root@zw-test-db local]# ls bin etc games include lib lib64 libexec redis-3.2.2 sbin share src [root@zw-test-db local]# ln -s /opt/mysql/mysql-5.7.14 /usr/local/mysql [root@zw-test-db local]# ll mysql lrwxrwxrwx 1 root root 23 Aug 31 17:36 mysql -> /opt/mysql/mysql-5.7.14 [root@zw-test-db local]#
5. 創建用戶
[root@zw-test-db /]# groupadd mysql [root@zw-test-db /]# useradd -M -g mysql -s /sbin/nologin -d /usr/local/mysql mysql
-s nologin 沒有shell 不能登錄的
6. 基於配置文件創建基本的目錄
mkdir /data/mysql mkdir /data/mysql/mysql_3306 cd /data/mysql/mysql_3306/ mkdir data mkdir logs mkdir tmp chown -R mysql:mysql /data/mysql/mysql3306
7.創建/etc/my.cnf配置文件 (過程略)
8.初始化,5.7的初始化會加一個默認的密碼
[root@zw-test-db mysql]# cd /usr/local/mysql/ [root@zw-test-db mysql]# ./bin/mysqld --initialize [root@zw-test-db data]# pwd /data/mysql/mysql_3306/data ### 下面是5.5, 5.6 初始化 /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql
9.查看 error日志,看有沒有error
cd /data/mysql/mysql_3306/data [root@zw-test-db data]# vim error.log [root@zw-test-db data]# tail -f error.log 2016-08-31T09:44:32.394657Z 0 [Note] Giving 0 client threads a chance to die gracefully 2016-08-31T09:44:32.394680Z 0 [Note] Shutting down slave threads 2016-08-31T09:44:32.394686Z 0 [Note] Forcefully disconnecting 0 remaining clients 2016-08-31T09:44:32.415409Z 0 [Note] Binlog end 2016-08-31T09:44:32.434217Z 0 [Note] InnoDB: FTS optimize thread exiting. 2016-08-31T09:44:32.434293Z 0 [Note] InnoDB: Starting shutdown... 2016-08-31T09:44:32.534587Z 0 [Note] InnoDB: Dumping buffer pool(s) to /data/mysql/mysql_3306/data/ib_buffer_pool 2016-08-31T09:44:32.534741Z 0 [Note] InnoDB: Buffer pool(s) dump completed at 160831 17:44:32 2016-08-31T09:44:34.308784Z 0 [Note] InnoDB: Shutdown completed; log sequence number 2525428 2016-08-31T09:44:34.308945Z 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"
10.查看初始化密碼
[root@zw-test-db data]# grep password error.log
2016-08-31T09:44:21.172167Z 1 [Note] A temporary password is generated for root@localhost: 8aahkRkxfm%t
密碼是: 8aahkRkxfm%t
11 創建一個啟動腳本
[root@zw-test-db data]# cd /usr/local/mysql/
[root@zw-test-db mysql]# cp support-files/mysql.server /etc/init.d/mysql
cp: overwrite `/etc/init.d/mysql'? y
12.啟動mysql的三種方式
方式一:
root@zw-test-db bin]# ./mysqld_safe --user=mysql & [1] 12455 [root@zw-test-db bin]# 160830 15:18:01 mysqld_safe Logging to '/usr/local/mysql/data/zw-test-db.err'. 160830 15:18:01 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
方式二:
[root@zw-test-db bin]# /etc/init.d/mysqld restart Shutting down MySQL..160830 15:18:14 mysqld_safe mysqld from pid file /usr/local/mysql/data/zw-test-db.pid ended [ OK ] Starting MySQL. [ OK ] [1]+ Done ./mysqld_safe --user=mysql
方式三:
[root@zw-test-db bin]# service mysqld restart Shutting down MySQL.. [ OK ] Starting MySQL. [ OK ] [root@zw-test-db bin]#
13. 添加環境變量
echo "export PATH=\$PATH:/usr/local/mysql/bin" >> /root/.bash_profile
source /root/.bash_profile
14. 登陸
[root@zw-test-db mysql]# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.7.14-log Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. root@localhost [(none)]>show databases; --提示要修改密碼 ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
15.修改密碼
root@localhost [(none)]>alter user user() identified by '123456'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) root@localhost [(none)]>show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec)
可以查看數據庫了
16. 5.6版本之前需要帳號安全加固,5,7以後 test數據庫都沒有了
delete from mysql.user where user!='root' or host!='localhost'; --刪除非root用戶,登陸主機不是localhost的賬號 flush privileges; alter user user() identified by '123456'; drop database test; truncate mysql.db;
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持幫客之家。