1. 程式人生 > 實用技巧 >CentOS 7 MySQL5.7 TAR包解壓 全自動化指令碼

CentOS 7 MySQL5.7 TAR包解壓 全自動化指令碼

準備工作

tar安裝包:預設已經下載好mysql 安裝包,名稱為:mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz,我的安裝包位置:/root 。我伺服器沒有網路,只能通過sftp上傳。

安裝位置:mysql程式安裝路徑為:/usr/local/mysql ,資料庫路徑為:/usr/local/mysql/data。路徑可以修改,只要批量把指令碼中的路徑替換即可。

全自動指令碼

只需要全選Copy指令碼,在Linux上Paste 。

#建立mysql使用者組
groupadd mysql
#建立一個使用者名稱為mysql的使用者並加入mysql使用者組
useradd 
-g mysql mysql #制定password 為123456 passwd mysql #我安裝到/usr/local tar -zxvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz mv mysql-5.7.21-linux-glibc2.12-x86_64 /usr/local/mysql cd /usr/local #更改所屬的組和使用者 chown -R mysql mysql/ chgrp -R mysql mysql/ cd mysql/
#資料庫路徑 mkdir data chown
-R mysql:mysql data


cp /etc/my.cnf /etc/my.cnf.back

#寫入配置
cat>> /etc/my.cnf<<EOF [mysql] # 設定mysql客戶端預設字符集 default-character-set=utf8 [mysqld] skip-name-resolve #設定3306埠 port = 3306 # 設定mysql的安裝目錄 basedir=/usr/local/mysql # 設定mysql資料庫的資料的存放目錄 datadir=/usr/local/mysql/data pid-file=/usr/local/mysql/data/mysql.pid # 允許最大連線數 max_connections=200 # 服務端使用的字符集預設為8位元編碼的latin1字符集 character-set-server=utf8 # 建立新表時將使用的預設儲存引擎 default-storage-engine=INNODB lower_case_table_names=1 max_allowed_packet=16M EOF

#安裝和初始化 # 注data目錄中不能有檔案
bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

#安裝服務 cp ./support-files/mysql.server /etc/init.d/mysqld chown 777 /etc/my.cnf chmod +x /etc/init.d/mysqld # 啟動服務 /etc/init.d/mysqld start
#設定開機啟動 chkconfig --level 35 mysqld on chkconfig --list mysqld chmod +x /etc/rc.d/init.d/mysqld chkconfig --add mysqld chkconfig --list mysqld service mysqld status #登入mysql
/usr/local/mysql/bin/mysql -uroot -p

#到此mysql安裝完成

到此mysql已經安裝完成

我們登入一下,確認資料庫是否可用

#獲得初始密碼
cat /root/.mysql_secret  
# Password set for user 'root@localhost' at 2017-04-17 17:40:02  K<?5W7e7?5Iq

/usr/local/mysql/bin/mysql -uroot -p

其時我不太喜歡輸入初始化的密碼,裡面有符號數字等大小寫問題,輸入比較累。可參考在忘記密碼,直接修改成自己喜歡的。