原文連接:http://www.cnblogs.com/EasonJim/p/7147787.html#tophtml
安裝MySQL前須要作以下了解:mysql
一、MySQL各種型版本的區別,參考:http://www.cnblogs.com/EasonJim/p/6274344.htmllinux
二、官方的下載地址通常指向最新的版本下載,若是要下載之前的版本,好比5.5.x的版本,有特殊入口,參考:http://www.cnblogs.com/EasonJim/p/7147134.htmlsql
三、隨着時間的推移,教程上可能會失效,可是最標準和最新的教程官方是提供的,入口請參考:http://www.cnblogs.com/EasonJim/p/7147198.html數據庫
安裝方式的選擇:ubuntu
0、前提,不管是哪有安裝方式都必須對my.cnf文件有所瞭解,參考:http://www.cnblogs.com/EasonJim/p/7158466.html後端
一、在安裝以前須要注意,前面有篇文章http://www.cnblogs.com/EasonJim/p/6275863.html是講解Mac下安裝MySQL的,裏面採用的安裝方式基於安裝包pkg,有安裝界面,安裝好以後在系統設置和命令行上自動配置了環境變量等。服務器
二、對於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爲密碼
#測試SQL show 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}_*.deb sudo dpkg -i mysql-common_*.deb sudo dpkg -i mysql-community-client_*.deb sudo dpkg -i mysql-client_*.deb sudo dpkg -i mysql-community-server_*.deb sudo 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.gz sudo mv mysql-5.7.18-linux-glibc2.5-x86_64 /usr/local sudo 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-files sudo 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.d sudo 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