最近公司讓整理一個Linux安裝MySQL的文檔。是以就整理了一下,這裡将自己整理的詳細文檔做個筆記。
1、下載下傳Mysql。
https://dev.mysql.com/downloads/mysql/5.6.html#downloads
我這裡選擇安裝的版本是5.7.26
選擇一個安裝包進行下載下傳
https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
使用下載下傳指令直接下載下傳,或者自己下載下傳後上傳到伺服器。
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
2、解壓安裝包
tar –zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
3、複制檔案到安裝目錄
複制檔案到 /usr/local/mysql (一般情況都是複制這個目錄當然也可以自定義)
cp -r mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql
4、添加mysql使用者組和使用者及修改對應權限
groupadd mysql
useradd -g mysql mysql
更改/usr/local/mysql 檔案夾所有者屬性和對應權限
chown -R mysql:mysql /usr/local/mysql/
chown -R mysql /usr/local/mysql/
chmod -R 755 /usr/local/mysql/
5、安裝libaio 依賴包 如果已安裝則跳過
yum install libaio (我用的是CentOS是以安裝是用yum)
6、初始化安裝
在目前目錄(/usr/local/mysql/)建立一個data目錄 用于存放資料庫資料檔案 (這個位置可以自定義)
mkdir data
注意修改data目錄權限
chown -R mysql:mysql /usr/local/mysql/data
chown -R mysql /usr/local/mysql/data
chmod -R 755 /usr/local/mysql/data
初始化安裝指令
bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
mysqld 在資料庫軟體目錄的bin下面;我目前在/usr/local/mysql根目錄是以執行mysqld時前面要加上bin目錄。
basedir:資料庫軟體根目錄,即解壓後複制到的地方
datadir:資料庫資料存儲目錄,這個就是前面mkdir data前面建立的
記住最後幾個字元生成的臨時資料庫登入密碼記住是冒号後面的都是密碼(如下圖)
如果出現:initialize specified but the data directory has files in it. Aborting錯誤,請将data目錄下的所有檔案都删除,再進行初始化安裝指令。
7、修改配置檔案
修改datadir、basedir等對應的目錄。
配置檔案裡所有配置的檔案位置必須真實存在,不存在的需要手動建立;并且賦予對應的檔案權限。
vim /etc/my.cnf
8、建立日志檔案并賦予對應權限
var/log/mariadb/mariadb.log 這裡必須要将mariadb.log檔案建立好才行。
建立檔案(我是已經在var/log/mariadb目錄下了)
建立檔案
touch mariadb.log
設定日志檔案所有者為mysql和對應權限
chown -R mysql:mysql /var/log/mariadb/
chown -R mysql /var/log/mariadb/
chmod -R 755 /var/log/mariadb/
9、将mysql加入服務并設定開機自啟動
加入服務
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
開機啟動
chkconfig mysql on
10、啟動Mysql服務并連接配接資料庫
service mysql start
看到 Starting MySQL. SUCCESS! 代表啟動成功。至此安裝啟動完成。
連接配接資料庫 使用臨時密碼登入
mysql -u root –p
登入後如果輸入任何mysql 指令都是提示:You must reset your password using ALTER USER statement before executing this statement.
如下圖錯誤提示
如果是這種情況就需要強制修改使用者密碼。
alter user user() identified by "123456"; (此指令是在登入mysql後執行)
11、修改允許遠端連接配接
允許遠端連接配接例如Navicat 等用戶端登入。
以下指令都是在登入mysql成功後執行
update user set host='%' where user = 'root';
使修改的權限立即生效。
flush privileges;
注意,在真實的生産環境中,并不建議這麼修改,因為安全風險太大。建議根據實際情況将root使用者的host項修改為某個指定的ip位址,或仍然保持localhost。
接下來就可以使用用戶端連接配接了。
使用用戶端連接配接注意要開啟防火牆3306端口才行,如果是買的雲伺服器則需要在雲伺服器安全設定頁面添加對應的進出端口。
Linux公社的RSS位址:https://www.linuxidc.com/rssFeed.aspx
本文永久更新連結位址:https://www.linuxidc.com/Linux/2019-12/161832.htm