本文引用自 http://www.javashuo.com/article/p-bjkhtffj-k.htmlhtml
此篇爲http://www.cnblogs.com/EasonJim/p/7139275.html的分支頁。mysql
安裝MySQL前須要作以下了解:linux
一、MySQL各種型版本的區別,參考:http://www.cnblogs.com/EasonJim/p/6274344.htmlsql
二、官方的下載地址通常指向最新的版本下載,若是要下載之前的版本,好比5.5.x的版本,有特殊入口,參考:http://www.cnblogs.com/EasonJim/p/7147134.html數據庫
三、隨着時間的推移,教程上可能會失效,可是最標準和最新的教程官方是提供的,入口請參考:http://www.cnblogs.com/EasonJim/p/7147198.htmlubuntu
安裝方式的選擇:後端
0、前提,不管是哪有安裝方式都必須對my.cnf文件有所瞭解,參考:http://www.cnblogs.com/EasonJim/p/7158466.html服務器
一、在安裝以前須要注意,前面有篇文章http://www.cnblogs.com/EasonJim/p/6275863.html是講解Mac下安裝MySQL的,裏面採用的安裝方式基於安裝包pkg,有安裝界面,安裝好以後在系統設置和命令行上自動配置了環境變量等。less
二、對於Mac下安裝,我以爲越簡單越好,能用就好了,畢竟在Mac下不可能做爲服務器使用,至於開機啓動和不啓動也不要緊,只要能作簡單的測試便可。命令行這些也可有可無。還有就是不少時候在開發時都是鏈接公司的服務器來進行的。ide
三、而對於在Linux下安裝,若是爲開發服務器,那麼建議安裝deb版本,也就是安裝包的形式,或者是APT源進行安裝,安裝好以後自動配置了環境變量等。觀點就是能用就行,不須要太複雜的配置,比較不少時候在開發時都是鏈接公司的服務器來進行的。
四、若是對於服務器版本的Linux,建議是安裝tar.gz壓縮包版本的,這個安裝所有都是手動配置,包括啓動服務,環境變量等,由於能夠給你一個很清晰的配置思路,至於安裝了什麼,配置了什麼,這些均可以一步瞭然的排查出來。固然,在Linux下deb仍是tar.gz各有各的好處,畢竟這些均可以根據須要進行版本選擇。
五、經過安裝tar.gz壓縮包版本,也就是二進制包,能在同一臺機器上安裝多個MySQL。
安裝步驟:
1、經過APT方式安裝
說明:此種方式徹底參考官方提供的教程https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/。
注意:經過APT方式安裝的版本都是如今最新的版本,如今我安裝的是5.7.18。經過這種方式安裝好以後開機自啓動都已經配置好,和命令行上的環境變量,無需手動配置。
一、(可省略)下載官方提供的mysql-apt-config.deb包進行APT源設置,下載地址:https://dev.mysql.com/downloads/repo/apt/
不過我感受這個配置沒什麼做用,只不過能夠配置能夠安裝什麼類型版本的MySQL,和一些經常使用工具等,這些均可以本身手動經過apt-get的方式進行安裝解決。
sudo dpkg -i mysql-apt-config_0.8.6-1_all.deb
運行以後會出現以下界面:
通常只須要默認,按方向鍵選擇OK回車便可。
完成後運行更新命令:
sudo apt-get update
說明:官方說經過這個工具這樣操做以後,安裝MySQL時就是按照上面選擇的來進行。
二、安裝
sudo apt-get install mysql-server
此時若是提示依賴不足,以下所示:
那麼須要運行下面命令解決依賴問題
sudo apt-get install -f
安裝MySQL時會一併安裝以下所示的軟件:
完成後再次運行sudo apt-get install mysql-server。若是沒出現依賴問題,那麼就不須要使用此命令。
三、安裝過程的操做:
安裝過程會提示輸入數據庫的登陸名和密碼,輸入便可,以下所示:
四、安裝後的操做:
說明:經過這種方式安裝好以後開機自啓動都已經配置好,和命令行上的環境變量,無需手動配置。
安裝好以後會建立以下目錄:
數據庫目錄:/var/lib/mysql/
配置文件:/usr/share/mysql(命令及配置文件) ,/etc/mysql(如:my.cnf)
相關命令:/usr/bin(mysqladmin mysqldump等命令) 和/usr/sbin
啓動腳本:/etc/init.d/mysql(啓動腳本文件mysql的目錄)
測試:
#服務啓動後端口查詢sudo netstat -anp | grep mysql
#服務管理#啓動sudo service mysql start#中止sudo service mysql stop#服務狀態sudo service mysql status
#鏈接數據庫mysql -h 127.0.0.1 -P 3306 -uroot -p123456#-h爲遠程IP,-P爲端口號,-u爲用戶名,-p爲密碼
#測試SQLshow databases;
測試一切正常。
五、卸載
#首先使用如下命令刪除MySQL服務器:sudo apt-get remove mysql-server#而後,刪除隨MySQL服務器自動安裝的任何其餘軟件:sudo apt-get autoremove#卸載其餘組件:sudo apt-get remove <<package-name>>#查看從MySQL APT存儲庫安裝的軟件包列表:dpkg -l | grep mysql | grep ii
2、經過下載離線安裝包DEB Bundle進行安裝
說明:參考官方安裝文檔,參考:https://dev.mysql.com/doc/refman/5.7/en/linux-installation-debian.html
一、下載:
其實DEB Bundle類型就是離線deb安裝包,把全部軟件打包進去了。
登陸站點:https://dev.mysql.com/downloads/mysql/
選擇系統:
選擇版本,在最下方選擇16.04:
在列表上會有DEB Package的,這個其實就是deb文件,不過也是在線安裝的形式,因此文件很小,不建議選擇。
二、解壓
tar xvf mysql-server_5.7.18-1ubuntu16.04_amd64.deb-bundle.tar
解壓出來的文件以下:
三、安裝
說明:如下命令是官網提供的
#libaio 若是系統中還沒有存在庫,則 可能須要安裝該庫:sudo apt-get install libaio1#使用如下命令預配置MySQL服務器軟件包:sudo dpkg-preconfigure mysql-community-server_*.deb#提示:將被要求爲root用戶提供您的MySQL安裝密碼。#對於MySQL服務器的基本安裝,請安裝數據庫公用文件包,客戶端包,客戶端元包,服務器包和服務器元包(按此順序); 可使用單個命令來執行此操做:#注意:下面這條命令不能直接運行,應該拆開來按中括號裏面以逗號分開的順序進行安裝,好比:#sudo dpkg -i mysql-{common,community-client,client,community-server,server}_*.debsudo dpkg -i mysql-common_*.debsudo dpkg -i mysql-community-client_*.debsudo dpkg -i mysql-client_*.debsudo dpkg -i mysql-community-server_*.debsudo dpkg -i mysql-server_*.deb#若是中途被dpkg警告未知足的依賴關係 ,可使用apt-get來修復它們,而後再運行中斷的命令 :sudo apt-get -f install
安裝完成後和第一種方式效果上是一致的。
3、經過tar.gz壓縮包進行安裝
如下教程官網已經提供,參考:https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html
說明:這種方式是須要進行後期處理,好比開機啓動服務,命令行環境變量,以及配置文件設置等。
一、下載:
站點:https://dev.mysql.com/downloads/mysql/
二、解壓
tar zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gzsudo mv mysql-5.7.18-linux-glibc2.5-x86_64 /usr/localsudo ln -s /usr/local/mysql-5.7.18-linux-glibc2.5-x86_64/ /usr/local/mysql
三、安裝
因爲MySQL運行須要libaio1庫,因此須要運行如下命令進行安裝:
sudo apt-get install libaio1
#添加用戶組sudo groupadd mysql#添加用戶,這個用戶是不能登陸的sudo useradd -r -g mysql -s /bin/false mysql#進入文件目錄,mysql是連接cd /usr/local/mysql#新建文件夾sudo mkdir mysql-files#修改文件夾的權限sudo chmod 750 mysql-filessudo chown -R mysql .sudo chgrp -R mysql .#安裝初始化,注意:此部最後一行會有一個初始化密碼,用於root帳號的首次登陸sudo bin/mysqld --initialize --user=mysql #生成證書sudo bin/mysql_ssl_rsa_setup #把權限修改回來 sudo chown -R root .sudo chown -R mysql data mysql-files
四、啓動
#啓動在後臺sudo bin/mysqld_safe --user=mysql &
五、登陸測試並修改root密碼
/usr/local/mysql/bin/mysql -uroot -p
提示:密碼在安裝初始化時最後一行的信息,裏面有括號和特殊字符。
#修改root密碼,每個分號直接回車mysql> SET PASSWORD = PASSWORD('新密碼');mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;mysql> flush privileges;
#增長一個'root'@'%'帳號實現遠程登陸mysql> grant all privileges on *.* to 'root'@'%' identified by '新密碼' with grant option;
六、配置服務自動啓動
#複製服務文件到/etc/init.dsudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql.server
安裝sysv-rc-conf
sudo apt-get install sysv-rc-conf
啓動sysv-rc-conf
sudo sysv-rc-conf
按空格鍵出現X,而後按Q退出。重啓便可。
服務的相關操做命令:
#服務狀態sudo service mysql.server status#服務啓動sudo service mysql.server start#服務中止sudo service mysql.server stop
七、配置環境變量
在~/.profile文件的最下方加入
export PATH=$PATH:/usr/local/mysql/bin
參考:
http://www.cnblogs.com/oldfish/p/5039772.html(基於deb包的安裝)
http://blog.csdn.net/lllliulin/article/details/51526569(基於APT源的安裝)
http://www.2cto.com/database/201401/273423.html(基於APT源的安裝)
https://my.oschina.net/ramboo/blog/725378(基於二進制包安裝多個MySQL)
http://blog.csdn.net/carry9148/article/details/52624990(基於二進制包安裝,有Shell腳本快速安裝)
http://www.jianshu.com/p/b600c3b28bd9(基於二進制包安裝)