本文中Linux環境爲CentOS 6.4 32位,且安裝選擇的是Basic Server版。node
在有些Linux版本中會自帶有MySQL數據庫,因此在安裝以前,須要檢查當前Linux環境中是否已有MySQL數據庫,如有,則先將其卸載。mysql
如下爲在CentOS中安裝MySQL的基本步驟:c++
1)查看當前系統是否自帶MySQL數據庫sql
[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數據庫dom
[root@MySqlServer ~]# rpm -e --nodeps mysql-libs-5.1.66-2.el6_3.i686 [root@MySqlServer ~]#
說明:命令 rpm -e --nodeps [要卸載的軟件名] 用於卸載軟件。tcp
3)上傳MySQL至Linuxide
該步驟可使用不少種方式進行文件的上傳。因爲此時本人使用的電腦是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軟件包spa
解壓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 ]
------------------------------------------------------
自此,大功告成!!!