linux安裝-mysql5.7.24


1、檢查是否已安裝過mariadb,若有便刪除(linux系統自帶的)

[root@localhost /]# rpm -qa | grep mariadb
[root@localhost /]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

2、檢查是否已安裝過mysql,若有便刪除(linux系統自帶的)

[root@localhost /]# rpm -qa | grep mysql
[root@localhost /]# rpm -e –-nodeps mysql-libs-5.1.52.x86_64

3、檢查mysql組和用戶是否存在,如無創建:

  [root @localhost ~]# cat /etc/group | grep mysql
  [root@localhost ~]# cat /etc/passwd |grep mysql
  [root@localhost ~]# groupadd mysql
  [root@localhost ~]# useradd -r -g mysql mysql

4、從官網下載mysql安裝包,解壓后移動到/usr/local/mysql下

[root@localhost download]# wget https: //dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
[root@localhost download]# tar xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
[root@localhost download]# mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql

5、在mysql下添加data目錄

[root@localhost ~]# mkdir /usr/local/mysql/data
[root@localhost ~]# mkdir /usr/local/mysql/log
[root@localhost ~]# touch /usr/local/mysql/log/mysql-error.log 

6、更改mysql目錄下所有的目錄及文件夾所屬組合用戶(一定不要少了 / ,之前就是這個原因搞了一天)

[root@localhost /]# cd /usr/local/ 
[root@localhost local]# chown -R mysql:mysql mysql/
[root@localhost local]# chmod -R 755 mysql/

7、編輯my.cnf,添加配置文件,配置內容為- 添加好后覆蓋/etc/my.cnf(cp /usr/local/mysql/my.cnf /etc/my.cnf)

[root@localhost local]# vi /etc/my.cnf

[client] 
#password=88888888 
socket=/usr/local/mysql/mysql.sock


[mysql]
socket=/usr/local/mysql/mysql.sock
# 設置mysql客戶端默認字符集
default-character-set=utf8

[mysqld]
pid-file=/usr/local/mysql/mysqld.pid 
log-error = /usr/local/mysql/log/mysql-error.log 
#設置3306端口
port = 3306 
# 設置mysql的安裝目錄
basedir=/usr/local/mysql
# 設置mysql數據庫的數據的存放目錄
datadir=/usr/local/mysql/data
#sock
socket=/usr/local/mysql/mysql.sock
# 允許最大連接數
max_connections=200
# 服務端使用的字符集默認為8比特編碼的latin1字符集
character-set-server=utf8mb4
# 創建新表時將使用的默認存儲引擎
default-storage-engine=INNODB

#允許時間類型的數據為零(去掉NO_ZERO_IN_DATE,NO_ZERO_DATE)
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

#解決mysql連接慢(201906181517)
skip-name-resolve

#skip-grant-tables ---------這行可以不加,慎重使用,

8、編譯安裝並初始化mysql,記住命令行末尾的密碼(如按紅色字體的操作需在--log-error指定的文件中查看初始密碼):

[root@localhost local]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql --log-error=/usr/local/mysql/log/mysql-error.log --pid-file=/usr/local/mysql/data/test01-mysql.pid --socket=/usr/local/mysql/mysql.sock --port=3306
##[root@localhost local]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
2017-08-31T08:50:23.910440Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-08-31T08:50:23.910635Z 0 [ERROR] Can't find error-message file '/usr/local/mysql/--datadir=/usr/local/mysql/data/share/errmsg.sys'. Check error-message file location and 'lc-messages-dir' con
figuration directive.2017-08-31T08:50:24.709286Z 0 [Warning] InnoDB: New log files created, LSN=45790
2017-08-31T08:50:24.767540Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-08-31T08:50:24.892629Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 6e083b8f-8e29-11e7-88b1-
005056b427be.2017-08-31T08:50:24.895674Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2017-08-31T08:50:24.896645Z 1 [Note] A temporary password is generated for root@localhost: gFamcspKm2+u

9、啟動mysql服務

 [root@localhost local]# /usr/local/mysql/support-files/mysql.server start

10、做個軟連接,重啟服務

[root@localhost local]# ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 
[root@localhost local]# service mysql restart
Shutting down MySQL.. SUCCESS!
Starting MySQL. SUCCESS!

11、做個軟鏈接,將安裝目錄下的mysql 放在/usr/bin 目錄下

[root@localhost local]# ln -s /usr/local/mysql/bin/mysql /usr/bin

12、登錄msyql,輸入密碼(密碼為步驟7初始化生成的密碼)

[root@localhost local]# mysql -u root -p
Enter password:

13、修改密碼並開放遠程

msql>alter user 'root'@'localhost' identified by '123456';
mysql>use mysql;
msyql>update user set user.Host='%' where user.User='root';
mysql>flush privileges;
mysql>quit

14、設置開機自啟動

1、將服務文件拷貝到init.d下,並重命名為mysql
[root@localhost local]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、賦予可執行權限
[root@localhost local]# chmod +x /etc/init.d/mysqld
3、添加服務
[root@localhost local]# chkconfig --add mysqld
4、顯示服務列表
[root@localhost local]# chkconfig --list
5、重啟服務器(一般不用重啟,所以此步略掉!!!)
[root@localhost local]# reboot


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM