Linux安裝及配置MySQL(詳解)

走了6遍的流程。。。沒啥問題了

 

注:這篇流程裏面記錄了之前走過的各種坑,同時也附上了解決方案,雖然可以直接給出正常流程,但是我個人覺得貼出的這些坑以及解決方案還是有作用的,算是筆記。有全流程詳解,其實很快就能安裝好的(約半個小時)。

1、下載

mysql各版本下載地址: http://ftp.ntu.edu.tw/MySQL/Downloads/

我這裏選擇5.5.47,通用版,linux下64位。

2、解壓

#將安裝包放到/usr/local目錄下,解壓
[root@iz8vb5o19rg1twsj651szwz local]# tar -zxvf mysql-5.5.47-linux2.6-i686.tar.gz

#修改解壓目錄名稱爲mysql

3、添加用戶組和用戶

#添加用戶組
[root@iz8vb5o19rg1twsj651szwz local]# groupadd mysql

#添加用戶mysql 到用戶組mysql
[root@iz8vb5o19rg1twsj651szwz local]# useradd -g mysql mysql

4、安裝

#設置權限
[root@iz8vb5o19rg1twsj651szwz local]# chown -R mysql .
[root@iz8vb5o19rg1twsj651szwz local]# chgrp -R mysql .
[root@iz8vb5o19rg1twsj651szwz local]# yum install libaio

#執行安裝腳本:
[root@iz8vb5o19rg1twsj651szwz local]# cd mysql
[root@iz8vb5o19rg1twsj651szwz mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data

#注意,在執行這一步時可能會遇到如下報錯:
#(1)

報錯:在64系統裏執行32位程序如果出現/lib/ld-linux.so.2:

           bad ELF interpreter: No such file or directory.......

 

解決方法:安裝glic

           執行命令:sudo yum install glibc.i686

#(2)再次執行剛纔的安裝命令

報錯:

解決方法:安裝libgcc

       執行命令:yum install libgcc libgcc.i686 

#(3)再再次執行剛纔的安裝命令

報錯: 

解決方法:安裝 libaio.so.1

          執行命令:yum install -y libaio.so.1

 執行後出現下圖內容,則初始化成功!

成功後接着執行下面命令:

[root@iz8vb5o19rg1twsj651szwz mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@iz8vb5o19rg1twsj651szwz mysql]# chmod 755 /etc/init.d/mysqld

#注意:5.6之前的版本是此操作
[root@iz8vb5o19rg1twsj651szwz mysql]# cp support-files/my-medium.cnf /etc/my.cnf
# 5.6之後的版本執行以下操作
[root@iz8vb5o19rg1twsj651szwz mysql]# cp support-files/my-default.cnf /etc/my.cnf

#修改啓動腳本
[root@iz8vb5o19rg1twsj651szwz mysql]# vi /etc/init.d/mysqld

#修改項:
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data/mysql

#啓動服務
[root@iz8vb5o19rg1twsj651szwz mysql]# service mysqld start

 

可能會報如下錯誤:

解決方法:編輯/etc/my.cnf文件

 

[root@iz8vb5o19rg1twsj651szwz mysql]#  vim /etc/my.cnf

#添加內容:
[mysqld]
datadir = /usr/local/mysql/data

#如果想開啓mysql的日誌機制,可在/usr/local/mysql目錄下創建一個文件夾,命名爲log,
#然後在該目錄下手動創建一個文件:mysql.log
#再在[mysqld]模塊中添加如下內容:
log=/usr/local/mysql/log/mysql.log
long_query_time=2
log-slow-queries= /usr/local/mysql/log/slowquery.log
log_error=/usr/local/mysql/log/mysql.log

 如圖:

文件保存後,再次啓動,服務開啓成功

5、登錄測試 

#接着再進行以下操作
[root@iz8vb5o19rg1twsj651szwz ~]# yum install ncurses ncurses-devel
[root@iz8vb5o19rg1twsj651szwz ~]# yum install libncurses.so.5
[root@iz8vb5o19rg1twsj651szwz ~]# /usr/local/mysql/bin/mysql -V

#登錄測試
[root@iz8vb5o19rg1twsj651szwz ~]# /usr/local/mysql/bin/mysql
#也可用以下方式登錄
[root@iz8vb5o19rg1twsj651szwz local]# ./mysql/bin/mysql -uroot

6、重置用戶密碼

#剛安裝好的MySQL,默認是沒有密碼的,所以在上面的登錄測試時,直接可以進入mysql模式
#下面我們給用戶設置密碼(假設設置密碼爲"test"):
mysql> use mysql;
mysql> update user set password=passworD("test") where user='root';
mysql> flush privileges;

#查看用戶表密碼是否已更改
mysql> select user,host,password from mysql.user;
mysql> exit;  

7、使用新密碼登錄

設置密碼後,再次用 ./mysql/bin/mysql -uroot 登錄,則會報錯:

改用 mysql -uroot -p 登錄:

解決方法:安裝mysql命令行

        執行命令: yum install mysql

安裝命令行後,再次登錄(可在任意位置進行登錄操作),顯示需要輸入密碼,

這時候輸入剛纔設置的密碼,即可登錄成功!

8、開啓mysql的遠程訪問權限

#(1)授權
#方法一(test:密碼):
mysql> use mysql; 
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "test";
mysql> flush privileges;

#方法二:
mysql> use mysql; 
mysql> update user set host = '%' where user = 'root'; 
mysql> select host, user from user; 
mysql> flush privileges;

#(2)然後,開放防火牆端口:
#打開防火牆配置文件
[root@iz8vb5o19rg1twsj651szwz ~]# vi  /etc/sysconfig/iptables	

執行以上命令發現沒有iptables文件,那是因爲

操作系統默認使用的是firewall作爲防火牆,把它停掉裝個iptables:

[root@iZ94byqpectZ ~]# systemctl stop firewalld 
[root@iZ94byqpectZ ~]# systemctl mask firewalld
[root@iZ94byqpectZ ~]# yum install -y iptables 
[root@iZ94byqpectZ ~]# yum install iptables-services

 然後/etc/sysconfig目錄下就有了iptables文件,我們就可以做配置了:

#打開文件
[root@iZ94byqpectZ ~]# vi  /etc/sysconfig/iptables

#增加下面一行									
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

 上個圖以供參考 ~

 

#重啓防火牆
[root@iZ94byqpectZ ~]# service  iptables restart		
#注意:增加的開放3306端口的語句一定要在icmp-host-prohibited之前

#(3)如果是雲服務器,則確保阿里雲實例裏開放了3306端口

 相關命令:

service mysqld restart     #重啓mysql
service mysqld start        #啓動mysql
service mysqld stop        #關閉mysql
service mysqld status     #查看運行狀態

顯示如下內容,則重啓mysql服務成功

到此,MySQL安裝完成!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章