1. 下載壓縮包
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.16-linux-glibc2.5-x86_64.tar
2. 解壓到指定目錄(這里我們選擇/usr/local/)
tar -xf ./mysql-5.7.16-linux-glibc2.5-x86_64.tar /usr/local/
cd /usr/local
# 此處做一個(gè)軟鏈接
ln -s /usr/local/mysql-5.7.16-linux-glibc2.5-x86_64.tar ./mysql
cd mysql
# 創(chuàng)建三個(gè)文件夾
mkdir data # 用于存放數(shù)據(jù)
mkdir tmp # 臨時(shí)文件
mkdir log # 日志
3. 創(chuàng)建用戶組和用戶
groupadd mysql
useradd -r -g mysql -s /bin/false mysql # 這是一個(gè)無法登陸的用戶
4. 自定義一份配置文件(my.cnf)
# 默認(rèn)情況下,mysql會(huì)去讀取/etc/my.cnf文件,我們將自己的配置寫入其中,如果/etc/my.cnf不存在就自己創(chuàng)建一份
[client]
#password = [your_password]
port = 3366
socket = /usr/local/mysql/tmp/mysql.sock
[mysqld]
# include conf file which maybe different between master and slave
#!include /home/xiaoju/mysql/etc/mysqld.cnf
#skip-grant-tables
optimizer_switch = index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=off,engine_condition_pushdown=on
# generic configuration options
port = 3366
socket = /usr/local/mysql/tmp/mysql.sock
pid-file = /usr/local/mysql/tmp/mysql.pid
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
tmpdir = /usr/local/mysql/tmp
# warning & error log
##error
log-warnings = 2
log-error = /usr/local/mysql/log/error.log
##slow log
slow_query_log = 1
long_query_time = 1
log_queries_not_using_indexes = 1
slow_query_log_file = /usr/local/mysql/log/slow.log
##general log
general_log = 0
general_log_file = /usr/local/mysql/log/query.log
[mysqldump]
quick
max_allowed_packet = 32M
[myisamchk]
key_buffer_size = 128M
sort_buffer_size = 128M
read_buffer = 8M
write_buffer = 8M
[mysqlhotcopy]
interactive-timeout
5. 初始化數(shù)據(jù)庫
cd /usr/local/mysql
# 修改訪問權(quán)限,便于接下來的操作
chmod 750 data tmp log
chown -R mysql .
chgrp -R mysql .
bin/mysqld --initialize --user=mysql # MySQL 5.7.6 及其以后版本需要調(diào)用這條命令,與老版本不同
bin/mysql_ssl_rsa_setup
# 初始化完成后,更改文件權(quán)限
chown -R root .
chown -R mysql data tmp log
6. 安全模式啟動(dòng)
bin/mysqld_safe --user=mysql & # 此處需要指定以mysql用戶啟動(dòng)
cp support-files/mysql.server /etc/init.d/mysql.server #加入開機(jī)啟動(dòng)
7. 登錄
首次登陸需要默認(rèn)密碼,然而這個(gè)密碼在初始化數(shù)據(jù)庫的時(shí)候被寫入了初始化日志,我們需要去找到這個(gè)密碼

自定義log文件夾中的日志信息
我們可以看到,密碼就在其中,現(xiàn)在我們可以登錄了
cd /usr/local/mysql
bin/mysql -u root -p
# 輸入日志中的初始密碼即可登錄,然后mysql會(huì)提示你重置密碼
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('Mysqlpassw0rd.'); # 密碼重置完成
# 如果日志中的密碼無法登錄,有人遇到過這個(gè)情況,可以嘗試如下方式設(shè)置密碼
bin/mysqladmin -u root -p
# 輸入日志中密碼,然后回提示你輸入新密碼