(一)官方網站下載下傳軟體 請通路http://dev.mysql.com/downloads/檢視我們的下載下傳頁面, 了解有關目前版本的MySQL和下載下傳說明的資訊。有關MySQL下載下傳鏡像站點的完整清單,請參閱 http://dev.mysql.com/downloads/mirrors.html。您還可以在這裡找到有關成為MySQL鏡像站點以及如何報告錯誤或過期鏡像 的資訊。
(二)驗證MD5校驗和
Linux示例:
shell> md5sum mysql-standard-5.7.20-linux-i686.tar.gz
aaab65abbec64d5e907dcd41b8699945 mysql-standard-5.7.20-linux-i686.tar.gz
Oracle提供了一組MySQL的二進制發行版。這些包括用于多個平台的壓縮tar檔案(具有
.tar.gz
擴充名的檔案 )的形式的通用二進制分發,以及用于所選平台的平台特定包格式的二進制檔案。
警告
如果您以前使用作業系統本機包管理系統安裝了MySQL,例如
yum
或者
apt-get
,您可能會遇到使用本機二進制進行安裝的問題。確定您以前的MySQL安裝已完全删除(使用您的軟體包管理系統),并且還删除了任何其他檔案(确定以前的MySQL資料檔案和配置檔案等等不需要才可以删除),如舊版本的資料檔案。您也應該檢查配置檔案,如
/etc/my.cnf
或
/etc/mysql
目錄,并删除它們。
重要
- MySQL依賴于
庫。如果此庫未在本地安裝,則資料目錄初始化和後續伺服器啟動步驟将失敗。如有必要,請使用相應的軟體包管理器進行安裝。例如,基于Yum的系統:libaio
shell> yum search libaio # search for info shell> yum install libaio # install library
在Unix上,要安裝壓縮的tar檔案二進制檔案,請在您選擇的安裝位置(通常為
/usr/local/mysql
)解壓縮。這将建立下表中顯示的目錄。
(三)使用二進制安裝MySQL
表2.3通用Unix / Linux二進制包的MySQL安裝布局
目錄 | 目錄内容 |
---|---|
| mysqld伺服器,用戶端和實用程式 |
| 日志檔案,資料庫 |
| 資訊格式的MySQL手冊 |
| Unix手冊頁 |
| 包含(标題)檔案 |
| 圖書館 |
| 其他支援檔案,包括錯誤消息,示例配置檔案,用于資料庫安裝的SQL |
要安裝和使用MySQL二進制分發,指令序列如下所示:
配置my.cnf檔案:(按需要配置選項)
[[email protected] mysql]# cat /etc/my.cnf | grep -v ^#
[client]
socket=/usr/local/mysql/mysql.sock
[mysqld]
server_id=10
port=3306
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data/
socket=/usr/local/mysql/mysql.sock
pid_file=/usr/local/mysql/mysql.pid
log_error=/usr/local/mysql/mysql_error.log
log_bin=/usr/local/mysql/data/mysql_bin
relay_log=/usr/local/mysql/data/relay_bin
[mysqld_safe]
log-error=/usr/local/mysql/mysql_safe.log
pid-file=/usr/local/mysql/mysql_safe.pid
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql # /bin/false 選項來建立一個不具有對伺服器主機的登入權限的使用者
shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> mkdir mysql-files
shell> chmod 750 mysql-files
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> bin/mysql_install_db --user=mysql # MySQL 5.7.5 --user=mysql一定要用MySQL使用者
shell> bin/mysqld --initialize --user=mysql # MySQL 5.7.6 and up#--initialize初始化資料庫,--user=mysql要用MySQL使用者
shell> bin/mysql_ssl_rsa_setup # MySQL 5.7.6 and up
shell> chown -R root .
shell> chown -R mysql data mysql-files
shell> bin/mysqld_safe --user=mysql &
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server
備注:記錄下伺服器的錯誤日志檔案log-error初始MySQL的root的密碼,可以使用它進行登入:
2017-07-01T07:36:31.297149Z 1 [Note] A temporary password is generated for [email protected]: q+/sih8U-Z*u
(四)檢查MySQL
1:檢查MySQL服務程序是否存在:mysqld_safe 和mysqld
[[email protected] mysql]# ps -ef | grep mysql
root 13909 62313 0 15:37 pts/3 00:00:00 /bin/sh bin/mysqld_safe --user=mysql
mysql 14139 13909 0 15:37 pts/3 00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/mysql_error.log --pid-file=/usr/local/mysql/mysql_safe.pid --socket=/usr/local/mysql/mysql.sock --port=3306
2:檢查MySQL安裝的基本目錄和資料目錄以及各種檔案是否都是MySQL的屬組和屬于者mysql:mysql
3:檢查伺服器的運作錯誤日志檔案log-error中是否有錯誤
如果有錯誤error,請解決。
4:檢查不需要的配置參數
確定伺服器未配置為忽略網絡連接配接,或(如果您嘗試遠端連接配接),則該伺服器尚未配置為僅在其網絡接口上本地偵聽。如果伺服器啟動
--skip-networking
,它将不會接受TCP / IP連接配接。如果啟動了伺服器
--bind-address=127.0.0.1
,它将隻在本地監聽環回接口上的TCP / IP連接配接,并且不接受遠端連接配接。如果伺服器使用該--skip-grant-tables選項啟動 ,則它不會讀取授權表或實作任何通路控制。任何人都可以連接配接和做任何事情,這是不安全的。為了使伺服器開始讀取表并啟用通路檢查,請重新整理權限。生産環境需要禁用這些選項:
--skip-networking;--skip-grant-tables;
--bind-address=127.0.0.1,--no-defaults表示禁用配置檔案
5:檢查其他參數
user=mysql,--initialize初始化資料庫
密碼長度要合适
端口,服務ID等等
(五) 更改MySQL的root賬号密碼
[r [email protected] mysql]#cd /usr/local/mysql/
登入到root賬号
[r[email protected] mysql]#bin/mysql -h localhost -u root -p 或者bin/mysql -u root -p
Enter password: 輸入日志檔案的初始密碼
然後更改root賬号的密碼
mysql> set password=password("123456");
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> exit
然後再重新登入一次,使用新密碼,如果登入成功,修改成功。
為了友善使用,我們該
ln
指令建立一個到安裝目錄的符号連結。這使您能夠更容易地将其引用為
/usr/local/mysql
。為避免在使用MySQL時始終鍵入用戶端程式的路徑名,您可以将該
/usr/local/mysql/bin
目錄添加到
PATH
變量中:
shell> echo $PATH
shell> export PATH=$PATH:/usr/local/mysql/bin