首頁  >  文章  >  運維  >  centos如何安裝mysql

centos如何安裝mysql

藏色散人
藏色散人原創
2020-03-19 13:39:1717821瀏覽

centos如何安裝mysql

centos如何安裝mysql?

CentOS中安裝MySQL步驟詳解

#本文中Linux環境為CentOS 6.4 32位,且安裝選擇的是Basic Server版。

在有些Linux版本中會自帶有MySQL資料庫,所以在安裝之前,需要檢查目前Linux環境中是否已有MySQL資料庫,若有,則先將其卸載。

以下為在CentOS中安裝MySQL的基本步驟:

1)查看目前系統是否自帶MySQL資料庫

[root@MySqlServer ~]# rpm -qa | grep mysql
mysql-libs-5.1.66-2.el6_3.i686
[root@MySqlServer ~]#

說明:執行rpm -qa | grep mysql 指令來查看當然系統是否自有MySQL資料庫,若有,則會顯示MySQL軟體名稱。

2)卸載自帶的MySQL資料庫

[root@MySqlServer ~]# rpm -e --nodeps mysql-libs-5.1.66-2.el6_3.i686
[root@MySqlServer ~]#

 說明:指令 rpm -e --nodeps [要卸載的軟體名稱] 用於卸載軟體。

3)上傳MySQL至Linux

此步驟可以使用很多種方式進行檔案的上傳。由於此時本人使用的電腦是Mac,因此本文中使用 scp 指令,來進行檔案傳輸。 (也可以使用FTP工具來進行圖形化介面操作)。

bogon:~ hrvy$ scp ~/Downloads/MySQL/MySQL-5.6.22-1.el6.i686.rpm-bundle.tar root@192.168.170.129:~/
root@192.168.170.129's password:
MySQL-5.6.22-1.el6.i686.rpm-bundle.tar        100%  205MB  16.9MB/s   00:12
bogon:~ hrvy$

4)解壓縮MySQL軟體包

解壓縮MySQL到/usr/local/下的mysql目錄(mysql目錄需要手動建立)。首先建立/usr/local/mysql/目錄,然後解壓縮至該目錄內。

[root@MySqlServer ~]# mkdir /usr/local/mysql
[root@MySqlServer ~]# tar -xvf MySQL-5.6.22-1.el6.i686.rpm-bundle.tar -C /usr/local/mysql/
MySQL-shared-compat-5.6.22-1.el6.i686.rpm
MySQL-server-5.6.22-1.el6.i686.rpm
MySQL-client-5.6.22-1.el6.i686.rpm
MySQL-devel-5.6.22-1.el6.i686.rpm
MySQL-test-5.6.22-1.el6.i686.rpm
MySQL-shared-5.6.22-1.el6.i686.rpm
MySQL-embedded-5.6.22-1.el6.i686.rpm
[root@MySqlServer ~]#

5)安裝MySQL

經過第4步操作後,將當前目錄切換到/usr/local/mysql/,可以看到該目錄中有很多後綴為.rpm的安裝套件,而實際上只需要安裝server和client即可。

[root@MySqlServer ~]# cd /usr/local/mysql/
[root@MySqlServer mysql]# ls
MySQL-client-5.6.22-1.el6.i686.rpm    MySQL-shared-5.6.22-1.el6.i686.rpm
MySQL-devel-5.6.22-1.el6.i686.rpm     MySQL-shared-compat-5.6.22-1.el6.i686.rpm
MySQL-embedded-5.6.22-1.el6.i686.rpm  MySQL-test-5.6.22-1.el6.i686.rpm
MySQL-server-5.6.22-1.el6.i686.rpm
[root@MySqlServer mysql]#

安裝MySQL server:

[root@MySqlServer mysql]# rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm

如提示error: Failed dependencies: 錯誤,則需要安裝MySQL依賴,執行以下指令即可:

[root@MySqlServer mysql]# yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so.6
[root@MySqlServer mysql]#

安裝MySQL client:

[root@MySqlServer mysql]# rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm

至此,MySQL資料庫安裝完成!

6)啟動mysql服務

[root@MySqlServer mysql]# service mysql start
Starting MySQL.                                            [  OK  ]
[root@MySqlServer mysql]#

7)連接資料庫

[root@MySqlServer mysql]# mysql -uroot -p
Enter password:

此時,遇到一個問題,安裝好的MySQL資料庫密碼是多少呢?其實,在安裝MySQL server的時候,安裝日誌已經說明:生產的隨機密碼保存在/root/.mysql_secret檔案中,可以查看一下這個檔案:

[root@MySqlServer mysql]# cat /root/.mysql_secret
# The random password set for the root user at Fri Jun 21 04:56:26 2019 (local time): 0lv4ltBp_sawlAGA
[root@MySqlServer mysql]#

現在,就可以登陸資料庫了!

8)修改密碼

登陸資料庫之後,由於隨機產生的密碼太難記,可以修改一個簡單的密碼,一邊自己使用。

mysql> set password = password('root');
Query OK, 0 rows affected (0.01 sec)

 此處設定密碼為root。現在可以退出重新登錄,看看密碼是否修改成功。

9)將mysql服務加入系統服務,並設定為開機啟動

每當Linux系統重新啟動之後,總要手動啟動mysql服務,故為了方便,將其加入系統服務中,並設為開機自啟動。

[root@MySqlServer mysql]# chkconfig --add mysql
[root@MySqlServer mysql]# chkconfig mysql on

10)開啟mysql的遠端登入

因為MySQL資料庫是安裝在Linux上的,而現實操作往往不是在該Linux直接使用,正常都是在本機上安裝一款MySQL圖形化管理工具,遠端連接Linux中的MySQL即可。

而遠端登入資料庫時,必須登陸的使用者俱有遠端登入的權限,否則是無法登陸成功的。

mysql> grant all privileges on *.* to 'root' @'%' identified by 'root';
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql>

說明:grant ... 語句中,第一個'root' 是用戶名,第二個'root' 是遠端登入密碼,遠端登入密碼可以設定為其他,其僅作為遠端登錄使用的密碼。 flush ... 語句作用:刷新權限,使設定生效。

11)開啟3306埠

預設情況下,Linux的防火牆是開啟的,3306埠也是未對外發放的,所以儘管上面那麼多步驟全部正確完成,依舊遠端連線不了資料庫.此時解決方案有二:1)關閉Linux的防火牆;2)開啟3306埠。

本案例使用的是開啟3306端口,而並非直接關閉Linux防火牆。

[root@MySqlServer mysql]# iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

【注意】使用iptables 指令設定的防火牆規則預設會在系統下一次重新啟動時失效,如果想要讓設定的防火牆策略永久生效,執行下面的儲存指令:

[root@MySqlServer mysql]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]

推薦學習Linux影片教學:https://www.php.cn/course/list/33.html

以上是centos如何安裝mysql的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn