一 官網(wǎng)下載 mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz
目前最新為5.7.16,可以直接下載mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz,
這里用的是5.7.12,未下載最新的,不過(guò),安裝方式一樣。
注:
下載與自己操作系統一樣的版本。
cat /etc/redhat-release 查看操作系統版本號.
官網(wǎng)地址:
http://www.mysql.com/downloads/ 點(diǎn)擊Mysql Community Server后進(jìn)入如下頁(yè)面:
選擇對應位數版本點(diǎn)擊Download,目前官網(wǎng)已經(jīng)更新到5.7.16,可以直接下載最新版本安裝,5.7安裝方式一樣:
進(jìn)入下載頁(yè)面點(diǎn)擊下載即可:
下載完后通過(guò)Xftp等方式上傳到linux系統習慣目錄下。
二 安裝mysql
******(1) 卸載mysql******
如果系統沒(méi)有安裝過(guò)mysql,此步驟不需要
1. 關(guān)閉mysql服務(wù)
2. 檢查是否有rpm包,如果沒(méi)有用rpm安裝過(guò)mysql,不應該有殘留,如果有,需要刪掉
檢查語(yǔ)法: rpm -qa|grep -i mysql
刪除語(yǔ)法: rpm -e <包的名字>
如果遇到依賴(lài),無(wú)法刪除,使用 rpm -e --nodeps <包的名字> 不檢查依賴(lài),直接刪除rpm包。
3. 通過(guò)find命令檢查是否有安裝mysql文件,有需要刪除
檢查語(yǔ)法: find / -name mysql
刪除語(yǔ)法: rm -rf 目錄文件(或文件)
除了自己下載的或解壓的,其余的都干掉。
******(2)創(chuàng )建mysql分組和用戶(hù)******
1. 暴力刪除mysql用戶(hù)
刪除語(yǔ)法: userdel -r -f mysql(如果沒(méi)有,會(huì )提示你mysql不存在,不用在意)
2. 添加分組
添加語(yǔ)法: groupadd mysql
3. 添加mysql用戶(hù)
添加語(yǔ)法: useradd -g mysql mysql
4. 給mysql用戶(hù)設置密碼
passwd mysql
如圖:
關(guān)于: userdel: warning: can't remove /var/spool/mail/mysql: No such file or directory
因為沒(méi)有/var/spool/mail/mysql,所以警告,通過(guò)find / -name mysql確實(shí)沒(méi)有檢查到,
不用管提示,直接往下創(chuàng )建分組和添加mysql用戶(hù)即可。
如果系統沒(méi)有安裝過(guò)mysql,應該不會(huì )出現這種情況。
******(3)解壓tar包******
1. cd到mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz目錄
2. 解壓tar包
解壓語(yǔ)法:tar zxvf mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz
解壓后多出一個(gè)mysql-5.7.12-linux-glibc2.5-x86_64的文件,
將這個(gè)文件復制到自己喜歡的目錄,重命名為mysql,復制的時(shí)候請耐心等待,
復制完后,cd到mysql目錄,新建一個(gè)data的文件夾。
復制語(yǔ)法: cp -r mysql-5.7.12-linux-glibc2.5-x86_64 /usr/local/mysql (注:其實(shí)根本需要cp這么麻煩,直接用解壓目錄即可)
新建文件語(yǔ)法: mkdir data
如圖:
******(4)安裝執行******
1. cd到/usr/local/mysql目錄,如果已經(jīng)在mysql目錄,無(wú)需改變
通過(guò)pwd查看當前所在目錄,確認是否在mysql目錄
2. cd到/usr/local/mysql/bin目錄,執行如下命令
./mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
回車(chē)執行即可
執行結果如圖:
3. 從上圖中的警告可以看出,mysql_install_db已經(jīng)不再使用了,建議我們使用mysqld進(jìn)行安裝,執行如下命令
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
回車(chē)執行即可
如圖:
回車(chē)后,看到打印出一大堆信息,看上去很有希望,耐心等待。
當然了,如果看到最后打印到:
Version: '5.7.12' socket: '/tmp/mysql.sock' port: 3306 MySQL Community Server (GPL)
如圖:
如果看到這句話(huà)的時(shí)候,如果你用的是shell,復制一個(gè)終端窗口,在新窗口中繼續下面的操作。
復制方法如圖:
******(5)測試mysql是否能啟動(dòng)******
1. cd到/usr/local/mysql/support-files/
編輯mysql.server,語(yǔ)法為: vim mysql.server
如圖:
2. 修改basedir和datadir路徑
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
如圖:
3. 保存并退出,如果使用x命令無(wú)法保存退出,可以使用wq!保存并強制退出
保存并退出步驟:
先按鍵盤(pán)最左上角的Esc鍵,
然后按住shift鍵,并且輸入:號
最后輸入wq!
回車(chē)保存并退出
如圖:
4. 啟動(dòng)測試
./mysql.server start
如圖:
如果你看到Starting Mysql SUCCESS!, 說(shuō)明我們已經(jīng)成功安裝了MySql,因為我們啟動(dòng)成功了,
如果走到了這步成功,繼續往下參考,否則需要仔細檢查下是什么地方出問(wèn)題了。
注:如果報錯,查看/etc/my.cnf是否已經(jīng)存在,存在刪除后,重新建立
注意:安裝僅供參考,如有毛病,還請多包容,每個(gè)人的系統或環(huán)境有區別。
******(6)創(chuàng )建軟連接******
ln -s /usr/local/mysql/bin/mysql /usr/bin
如圖:
軟連接有啥用,說(shuō)白了,就是給linux系統加上mysql這個(gè)命令,linux系統命令放在/usr/bin下,
與在windows中命令存在C:\Windows\System32目錄下一樣,windows上命令都是xxx.exe形式,
比如telnet.exe,如果沒(méi)有這個(gè)文件,windows命令窗口使用的時(shí)候就會(huì )提示命令telnet命令不存在,
這個(gè)地方操作,就是為了后面使用mysql命令的時(shí)候,能夠有這個(gè)命令做鋪墊。
******(7)創(chuàng )建mysql配置文件******
1. my.cnf配置
首先,如果/etc/my.cnf存在,直接刪掉my.cnf
然后,mv /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
編輯,vim /etc/my.cnf
如圖:
在my.cnf中,找到[mysqld],在此下增加如下配置:
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
character_set_server=utf8
[client]
default-character-set=utf8
同時(shí)刪掉或注釋掉my.cnf文件中的內容:
#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
如圖:
最后保存并退出。
2. mysqld配置
2.1. 拷貝啟動(dòng)文件到/etc/init.d/下并重命令為mysqld
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2.2. 增加執行權限
chmod 755 /etc/init.d/mysqld
2.3. 檢查自啟動(dòng)項列表中沒(méi)有mysqld
chkconfig --list mysqld
2.4. 如果沒(méi)有就添加mysqld
chkconfig --add mysqld
2.5. 設置開(kāi)機啟動(dòng)
chkconfig mysqld on
2.6. 啟動(dòng)測試
service mysqld start
如圖:
說(shuō)明我們的配置文件成功,mysql徹底安裝完成。
******(8)重置密碼******
1. 修改配置文件my.cnf
vim /etc/my.cnf
2. 找到[mysqld]在之后添加
skip-grant-tables
保存退出
3. 重啟mysql服務(wù)
service mysqld restart
重啟如圖:
4. 直接登陸mysql而不需要密碼
mysql -u root -p (一路直接回車(chē))
進(jìn)入后的效果:
5. 在mysql中輸入
update mysql.user set authentication_string=password('123456') where user='root';
6. 刷新權限
flush privileges
如圖:
7. 退出mysql,到my.cnf中把開(kāi)始添加的skip-grant-tables注釋掉或刪掉
8. 重啟mysql服務(wù)
service mysqld restart
9. 登錄
mysql -u root -p
輸入密碼,即可。
如圖:
完成以上工作后,我們的mysql算是裝完了,但是,想讓外界可以通過(guò)工具連接還需要設置。
******(9)工具連接3306端口數據庫******
注:
這里的操作不要操作root;root要改名,同時(shí)新建自己需要的庫和用戶(hù),再去對自己的庫做下面的操作。
1. 登陸mysql
mysql -u root -p
2. 修改mysql庫的user表,將host項,從localhost改為%。
%這里表示的是允許任意host訪(fǎng)問(wèn),如果只允許某一個(gè)ip訪(fǎng)問(wèn),則可改為相應的ip。
注:以下命令建議手動(dòng)輸入,避免不必要的麻煩。
3. use mysql;
如果報錯:需要reset密碼:
alter user 'root’@'localhost’ identified by 'root’
4. SET PASSWORD = PASSWORD('123456');
5. update user set host = '%' where user = 'root';
6. select host, user from user;
7. flush privileges;
如圖:
8. 防火墻開(kāi)放3306端口
編輯iptables文件:
在文件中增加3306端口,保存并退出,比如:
重啟iptables:
語(yǔ)法: service iptables restart
如圖:
9. 讓我們用工具連接試試
輸入你數據庫所在服務(wù)ip, 數據庫密碼,上面設置的密碼是123456,根據你設置而定。
一路確定,看到默認效果:
通過(guò)工具,任意操作數據庫。
到此,mysql安裝完成。
以上安裝僅供參考,不恰當的地方,請多指教,多包含。