centos7.5安裝MySQL5.7版本
一、卸載系統安裝的之前的版本
1、檢查是否已將安裝了mysql
rpm -qa | grep mysql
2、卸載以前的mysql
rpm -e --nodeps 已經存在的MySQL全名
二、官網下載壓縮包
1、官方下載
下載網址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
2、wget方式
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
三、解壓安裝包
#解壓縮到/usr/local/mysql目錄
tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz /usr/local/mysql/
#重命名
mv mysql-5.7.26-linux-glibc2.12-x86_64 mysql
#在/usr/local/mysql目錄創建data目錄
mkdir data
四、安裝過程
1、初始化MySQL
./mysqld --initialize --user=root --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US
2、執行命令後截圖,注意此時會生成臨時密碼,臨時密碼如果忘記可去/usr/local/mysql/data目錄下的.err文件裏面搜索“temporary password”查看
3、如果忘記密碼或者重新初始化,可以先將mysql/data目錄刪除,重新創建,然後再執行初始化命令
#進入目錄
cd /usr/local/mysql
#刪除data目錄
rm -rf data
#進入mysql的bin目錄
cd /usr/local/mysql/bin
#重新執行初始化MySQL命令
./mysqld --initialize --user=root --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US
2、配置my.cnf
(1)從5.7.17後MySQL就沒有默認的my_default.cnf文件模板,需要手動創建
cd /etc/
touch my.cnf
(2)my.cnf配置文件內容
[mysqld]
# sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
# 一般配置選項
basedir = /usr/local/mysql/
datadir = /usr/local/mysql/data
port = 3306
character-set-server = utf8
explicit_defaults_for_timestamp = true
#skip_grant_tables
3、啓動
#進入mysql的bin目錄
cd /usr/local/mysql/bin
#啓動mysql的服務
./mysqld_safe --user=root &
4、驗證是否啓動成功
ps -ef | grep mysql
5、設爲開機啓動
#進入support-files目錄,複製啓動命令文件
cd /usr/local/mysql/support-files/
#複製啓動命令文件
cp mysql.server /etc/init.d/mysql
#編輯
vi /etc/init.d/mysql
#將mysql目錄填上
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data/
#授權
chmod u+x /etc/init.d/mysql
#設爲開機啓動
chkconfig --add mysql
6、service啓動方式
#重啓服務:
service mysql restart
#停止服務:
service mysql stop
#啓動服務:
service mysql start
#查看服務:
service mysql status
7、登錄mysql修改密碼授權遠程登錄
(1)進入到mysql的bin目錄,輸入臨時密碼登錄
mysql -u root -p
輸入臨時密碼
(2)修改密碼
set password=password("123456");
(3)登錄遠程授權
grant all privileges on *.* to'root' @'%' identified by '123456';
(4)授權生效
flush privileges;
五、常見Q&A
1、執行啓動和重啓命令報錯pid
(1)執行啓動和重啓命令報錯pid
(2)解決方案,修改MySQL的啓動腳本,在腳本start位置增加 --user=root
vim /etc/init.d/mysql
參考文章: