mysql5.7.25搭建mysql-5.7.25.tar.gz包(親驗)


STEP 1. 下載

去往官方下載MySQL包.http://dev.mysql.com

mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz

STEP 2. 解壓縮

[root@study mysql]pwd
/root/soft-install/
[root@study mysql]tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz

 

STEP 3.  將解壓后的目錄的內容移動到指定的安裝目錄下,我選擇在/data/mysql, 建立相關文件以及修改文件和目錄的屬性

   [root@study mysql]test -d /data/mysql || mkdir /data/mysql
#移動第二步中解壓目錄中的所有數據到 /data/mysql中
[root@study mysql] mv mysql-5.7.25-linux-glibc2.12-x86_64/* /data/mysql

# 查看是否有mysql用戶名和mysql用戶組
[root@study mysql] cat /etc/passwd | grep mysql
[root@study mysql] cat /etc/group | grep mysql

#如果存在,則刪除用戶和用戶組
[root@study mysql] userdel -r mysql

# 接下來,新建mysql用戶(系統賬號)、mysql用戶組
[root@study mysql] groupadd mysql
[root@study mysql] useradd -r -s /sbin/nologin -d /data/mysql -g mysql mysql    #創建mysql用戶為系統賬號,禁止登陸系統,並指定家目錄為/data/mysql,所屬組為mysql組。

#更改/data/mysql目錄的用戶以及用戶組
[root@study mysql]chown -R mysql:mysql /data/mysql


# 創建MySQL 數據目錄
[root@study mysql]mkdir /var/mysql

# 更改目錄權限(用戶以及用戶組)
[root@study mysql]chown -R mysql:mysql /var/mysql


# 創建 日志
[root@study mysql] test -d /var/log/mysql || mkdir /var/log/mysql
[root@study mysql] chown -R mysql:mysql /var/log/mysql

# 創建 pid進程文件
[root@study mysql] touch  /data/mysql/mysqld.pid
[root@study mysql] chown mysql.mysql /data/mysql/mysqld.pid

注意:pid文件是mysql啟動時自動創建的文件,無需用戶手動單獨創建,該文件是在mysql初始化(初始化時要求mysql的數據庫目錄文件夾為空,否則初始化失敗)時提前指定的,否則為系統默認的pid文件。
例如:mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.20 --datadir=/data/mysql --pid-file=/data/mysql/mysqld.pid

 

 STEP 4. 修改配置文件 /etc/my.cnf

[root@study mysql] vim /etc/my.cnf
###
[mysqld]
# 數據目錄
datadir=/var/mysql
# 基礎目錄
basedir=/data/mysql
# MySQL監聽端口
port=3306
# soket文件
socket=/tmp/mysqld.sock
# 服務器字符集
character-set-server = utf8
symbolic-links=0
[mysqld_safe]
# mysql 日志文件
log-error=/var/log/mysql/mysqld.log
# mysql pid文件
pid-file=/data/mysql/mysqld.pid

 

STEP 5. 1安裝初始化

[root@study mysql] /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/data/mysql --datadir=/var/mysql 

初始化完畢,生成msql的臨時登陸密碼,在屏幕上顯示,

2019-12-01T04:51:27.589838Z 1 [Note] A temporary password is generated for root@localhost: je_BjKq;i54%

STEP 5. 2安裝初始化

[root@study mysql] /usr/local/mysql/bin/mysqld --initialize-insecure  --user=mysql --basedir=/data/mysql --datadir=/var/mysql 

 

STEP 6.1  啟動測試以及加入系統服務

linux7版本使用此方式加入,無法使用systemctl進行啟動/關閉服務,如需使用systemctl命令操作,需要加入到system啟動文件中。
mysqld_safe腳本可以啟動任何安裝方式安裝的Mysql,並總是嘗試將服務和數據庫與工作目錄相關聯,需要使用
ln -s   /tmp/mysqld.sock /var/lib/mysql/mysql.sock方可。

[root@study mysql] cd /data/mysql/
[root@study mysql] cp support-files/mysql.server  /etc/init.d/mysqld
[root@study mysql] vim /etc/init.d/mysqld      #添加basedir路徑,添加datadir路徑,添加mysql pid文件路徑
[root@study mysql]chkconfig --add mysqld
[root@study mysql]chkconfig mysqld on
[root@study mysql]service mysqld start
[root@study mysql]ln -s /data/mysql/bin/*  /usr/bin/    #添加mysql命令為系統命令
[root@study mysql]mysql -uroot -p
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
[root@study mysql]ln -s   /tmp/mysqld.sock /var/lib/mysql/mysql.sock 
[root@study mysql] mysql -uroot -p              #輸入mysql初始化時產生的臨時密碼登陸
mysql > alter user 'root'@'localhost' identified by '123456';  #首次登陸,修改賬號密碼

出現錯誤
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

嘗試
ln -s   /tmp/mysqld.sock /var/lib/mysql/mysql.sock 

STEP 6.2 啟動測試以及加入系統服務

[root@study mysql] cd /data/mysql/
[root@study mysql] cp support-files/mysql.server  /etc/mysqld
[root@study mysql] vim /etc/mysqld      #添加basedir路徑,添加datadir路徑,添加mysql pid文件路徑
[root@study mysql]chkconfig --add mysqld
[root@study mysql]chkconfig mysqld on
[root@study mysql]service mysqld start
[root@study mysql]ln -s /data/mysql/bin/*  /usr/bin/    #添加mysql命令為系統命令



[root@study mysql]mysqladmin -u root password 123456   # 配置數據庫管理員用戶密碼,假設為 123456
[root@study mysql]mysql -uroot -p123456
mysql > grant all privileges on *.*  to 'user'@'localhost' identified by 'gz@1234';  #創建指定用戶,並賦權

STEP 7.  設置開機啟動以及打開防火牆設置

#防火牆
[root@study mysql] firewall-cmd --permanent --zone=pulibc --add-port=3306/tcp
[root@study mysql] firewall-cmd --reload

STEP 8.  遠程主機連接mysql

#連接mysql
[root@study mysql] mysql -h ip地址  -u 用戶名 -p 密碼


免責聲明!

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



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