1. 程式人生 > >CentOS7安裝mysql5.7.19的手順,步驟(非常詳細)

CentOS7安裝mysql5.7.19的手順,步驟(非常詳細)

CentOS7安裝mysql5.7.19手順

1.首先確認系統是否已經安裝了mysql或者mariaDB
rpm -qa | grep mysql
rpm -qa | grep mariaDB

2.如果有相關安裝包,則立即解除安裝
rpm -e --nodeps 安裝包名稱
如:rpm -e --nodeps mysql-community-client-5.1.18-1.el7.i686
注意:一定要將mariaDB包和自帶mysql包解除安裝乾淨,否則安裝時出現各種奇妙錯誤,導致失敗。

3.去官網https://dev.mysql.com/downloads/mysql/下載相應版本的mysql。
我的CentOS7是32位的,所以選擇了Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86,32-bit)。
最小安裝下載四個檔案即可:
mysql-community-common-5.7.19-1.el7.i686.rpm
mysql-community-libs-5.7.19-1.el7.i686.rpm
mysql-community-client-5.7.19-1.el7.i686.rpm
mysql-community-server-5.7.19-1.el7.i686.rpm

4.安裝順序:
rpm -ivh mysql-community-common-5.7.19-1.el7.i686.rpm
rpm -ivh mysql-community-libs-5.7.19-1.el7.i686.rpm
rpm -ivh mysql-community-client-5.7.19-1.el7.i686.rpm
rpm -ivh mysql-community-server-5.7.19-1.el7.i686.rpm
注意:common先裝,libs依賴common,client依賴libs,server依賴common和client。

5.檢查安裝目錄
執行whereis mysql出現下面的資訊說明已經安裝成功了。
mysql: /usr/bin/mysql /usr/lib/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

6.檢查mysql配置檔案
vi /etc/my.cnf
主要內容如下,一般什麼都不需要更改,預設值即可。
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

7.檢查目錄許可權:
一定確保datadir設定的路徑的所有組和所有者是mysql,如果不是則執行下面命令更改,如果不改則初始化會失敗。
chown mysql:mysql -R /var/lib/mysql

8.關閉服務:
如果mysql服務開啟,則將其關閉
service mysqld stop

9.這裡是重點:一定要執行初始化!
mysqld --initialize -insecure --user=mysql
注意:這裡一定要加上-insecure,這樣mysql會建立一個沒有密碼的root賬戶,否則會建立有密碼的,密碼會寫在/var/log/mysqld.log裡面。

10.開啟服務:
service mysqld start

11.登入賬戶:
如果建立了沒有密碼的root賬戶,則直接mysql回車,就會進入mysql了。
否則mysql -u root -p,輸入密碼。

至此,mysql的root賬戶可以登入本地的mysql了,但是預設不支援遠端登入,以下是如何讓root賬戶遠端登入的流程:

12.使用資料庫mysql
use mysql;

13.查詢root賬戶資訊
select * from user \G;
這樣會看到root賬戶沒有密碼,那麼我們給它加個密碼,沒有密碼的root賬戶是不允許遠端登入的。

14.修改root賬戶的密碼:
update user set aurhentication_string=PASSWORD('your password') where user='root';
注意:新版的mysql 5.7.15後需要上面的改法,因為欄位變更為aurhentication_string了,網上爛大街那個不能用。

15.commit許可權更改:
一定執行下面的語句,否則修改密碼不生效。
flush privileges;

16.確認密碼修改成功:
exit; 退出mysql
然後
mysql -u root -p
輸入密碼

17.登入成功後給root賬戶授權遠端登入
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your password' WITH GRANT OPTION;
flush privileges;
注意:%表示任何機器都可遠端mysql,如果把%變成某個ip,就是指定某個機器才可以遠端登入。

18.嘗試遠端登入:
找個客戶端,輸入相關資訊
主機名或ip:******
埠:3306
使用者名稱:root
密碼:your password