1.mysql下載
①進入mysql官方網站:https://www.mysql.com/ 點擊進入DOWNLOADS下載頁面
②進入下載頁面后,找到mysql社區版本MySQL Community (GPL) Downloads點擊進入
③進入社區版頁面后,進行如下點擊
④進入后,點擊mysql版本歸檔頁面
⑤進入mysql版本歸檔頁面后選擇你所需要的mysql版本、操作系統及系統版本,然后點擊download即可下載
2.mysql安裝規范
MySQL安裝方式:推薦使用二進制安裝(其他安裝方式:源碼編譯安裝、yum、rpm)
MySQL運行用戶:mysql:mysql注意該用戶是虛擬用戶,只是用於mysql進程運行使用,不允許登錄、不創建家目錄
MySQL目錄規范:
下載目錄/server/tools
系統目錄/opt/mysql/mysql-xx.xx
軟連接ln-s/opt/mysql/mysql-xx.xx /usr/local/mysql
數據目錄/data/mysql/mysql+port/{data,logs}
配置文件/data/mysql/mysql+port/my+port.cnf
3.二進制安裝MySQL5.7.26(該方式使用於在linux系統下安裝MySQL5.7和MySQL8.0的各個小版本)
。創建MySQL虛擬用戶
useradd -s /sbin/nologin -M mysql #創建用戶命令
id mysql #查看是否創建成功

。創建目錄
mkdir -p /server/tools
mkdir -p /opt/mysql
mkdir -p /data/mysql/mysql3306/{data,logs}
cd /server/tools #進入到該目錄

。將下載的文件上傳
rz #上傳mysql二進制文件
ll #查看文件是否上傳成功
yum install -y lrzsz #如沒有rz命令,可通過yum安裝

。解壓二進制包
tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

。將軟件部分移動到指定目錄
mv mysql-5.7.26-linux-glibc2.12-x86_64 /opt/mysql/mysql-5.7.26

。創建軟連接
ln -s /opt/mysql/mysql-5.7.26/ /usr/local/mysql

。刪除mariadb(避免與MySQL沖突)
rpm -e --nodeps mariadb-libs

。配置文件整理(該配置參數只用於測試環境,不可在生產中使用。配置參數影響着MySQL數據庫的性能及安全,慎重!!!)
vim /data/mysql/mysql3306/my3306.cnf
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql/mysql3306/data
socket = /data/mysql/mysql3306/mysql.sock
server_id = 1
port = 3306
log_error=/data/mysql/mysql3306/logs/error.log
log_bin=/data/mysql/mysql3306/logs/mysql-bin
binlog_format=row
gtid_mode=on
enforce_gtid_consistency=true
log_slave_updates=1
max_connections=1024
wait_timeout=60
sort_buffer_size=2M
max_allowed_packet=32M
join_buffer_size=2M
innodb_buffer_pool_size=128M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=32M
innodb_log_file_size=128M
innodb_log_files_in_group=2
binlog_cache_size=2M
max_binlog_cache_size=8M
max_binlog_size=512M
expire_logs_days=7
slow_query_log=on
slow_query_log_file=/data/mysql/mysql3306/logs/slow.log
long_query_time=0.5
log_queries_not_using_indexes=1
。安裝MySQL依賴包
yum install libaio-devel -y

yum install numactl -y

。更改MySQL相關目錄的用戶組
chown -R mysql:mysql /data/*

。初始化數據庫
/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/mysql3306/data
(MySQL8.0 、MySQL5.7都是通過mysqld進行初始化數據)
--initialize-insecure :表示不給默認root用戶創建密碼,可以空密碼登陸

。加入環境變量
vim /etc/profile #vim編輯
export PATH="/usr/local/mysql/bin:$PATH"

source /etc/profile #執行腳本文件,使得環境變量生效
。啟動MySQL
mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf &
。查看是否啟動成功
netstat -lntup |grep mysql #如有指定的mysql進程,就表示mysql啟動成功

。連接mysql
#初始化時沒有給root用戶指定密碼,所以可以空密碼連接
mysql -uroot -p -S /data/mysql/mysql3306/mysql.sock
