參考1:https://www.jianshu.com/p/276d59cbc529
參考2:【mysql】centos7安裝mysql5.7(配置文件取消默認密碼)
參考3:https://www.linuxidc.com/Linux/2018-05/152574.htm
1、檢查是否已經安裝過mysql,執行命令
[root@localhost /]# rpm -qa | grep mysql
2、刪除mysql,執行命令
[root@localhost /]# rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64
3、下載mysql需要該支持(可略過)
yum -y install wget
4、在線下載下載或拷貝mysql(二選一)
4.1、拷貝法(可略過)
4.1.1、拷貝將壓縮文件夾解壓到local目錄
[root@localhost local]# tar -zxvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz -C /usr/local
4.1.2、或者先解壓,然後再重命名
[root@localhost wanhua]# mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/
[root@localhost wanhua]# cd /usr/local/
[root@localhost wanhua]# mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql
4.2、在線下載法
從官網下載是用於Linux的Mysql安裝包
[root@localhost wanhua]# wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm;
參考:https://www.cnblogs.com/ppap/p/10884684.html
5、更改mysql目錄下所有的目錄及文件夾所屬的用戶組和用戶,以及權限
[root@localhost wanhua]# groupadd mysql
[root@localhost wanhua]# useradd -g mysql -m mysql
6、編譯安裝並初始化mysql,務必記住初始化輸出日誌末尾的密碼(數據庫管理員臨時密碼)
[root@localhost wanhua]# cd /usr/local/mysql/bin
[root@localhost wanhua]# ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
記錄日誌最末尾位置root@localhost:後的字符串,此字符串爲mysql管理員臨時登錄密碼。
如:Eg:6rt)-aC>L 或 YpXf7ZksCv/a
7、編輯配置文件my.cnf (可以使用linux命令工具BatchShell來快速創建)
[root@localhost bin]# vi /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=400
innodb_file_per_table=1
#表名大小寫不明感,敏感爲
lower_case_table_names=1
#skip-grant-tables
8、啓動mysql服務器
[root@localhost wanhua]# /usr/local/mysql/support-files/mysql.server start
8.1、如果mysql存在,則結束進程
[root@localhost wanhua]# ps -ef|grep mysql
[root@localhost wanhua]# ps -ef|grep mysqld
結果:mysql 2871 2786 0 12:51 ? 00:00:03 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=localhost.localdomain.err --pid-file=/usr/local/mysql/data/localhost.localdomain.pid
[root@localhost wanhua]# ps -ef|grep mysql
#結束進程 2871就是進程的PID
kill -9 2871
8.2、重新啓動服務
[root@localhost wanhua]# /usr/local/mysql/support-files/mysql.server start
8.3、重啓服務
[root@localhost wanhua]# /usr/local/mysql/support-files/mysql.server restart
9、添加軟連接,並重啓mysql服務
[root@localhost wanhua]# ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
[root@localhost wanhua]# ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
[root@localhost wanhua]# service mysql restart
10、登錄mysql,修改密碼(密碼爲步驟6生成的臨時密碼 Eg:6rt)-aC>L)
[root@localhost wanhua]# mysql -u root -p
11、修改密碼 (注意mysql命令都需要;結尾,後面的步驟都需要)
mysql>set password for root@localhost = password('root');
12、修改密碼(可跳過,與7配合使用 跳過密碼修改: skip-grant-tables)
mysql>update mysql.user set authentication_string=password("root") where user="root";
13、開啓遠程連接
mysql>use mysql;
msyql>update user set user.Host='%' where user.User='root';
mysql>flush privileges;
14、關閉防火牆
- 打開防火牆:service iptables start
- 關閉防火牆:service iptables stop
- 查看防火牆狀態:service iptables status
[root@localhost /]# service iptables start
[root@localhost /]# service iptables stop
[root@localhost /]# service iptables status
15、設置開機自動啓動(未測試)
1、將服務文件拷貝到init.d下,並重命名爲mysql
[root@localhost /]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、賦予可執行權限
[root@localhost /]# chmod +x /etc/init.d/mysqld
3、添加服務
[root@localhost /]# chkconfig --add mysqld
4、顯示服務列表
[root@localhost /]# chkconfig --list