mysql 二進位制安裝
0.說明
在CentOS或者Red Hat上安裝mysql可以有三種方式:
- 使用rpm -ivh xxx.rpm 或者 yum install xxx (一般推薦使用rpm來安裝,需要弄清各個關鍵目錄在哪)
- 使用編譯好的通用二進位制版本的mysql來安裝(Generic Binaries mysql) (我就是使用方法2來安裝的)
- 使用原始碼來編譯安裝。
Linux通用二進位制版本mysql是在當我們使用rpm或者yum方法安裝失敗時,可以使用的方法。因為通用二進位制版本對glibc等lib庫的版本要求不是很高。所以使用這種方法,可以很好的解決:在低版本的CentOS上安裝高版本的mysql。
1.下載
開啟網頁
http://dev.mysql.com/downloads/mysql/
在 Select Platform 中選擇Linux - Generic,根據自己的系統選擇32位或者64位的。
2.建立使用者組和使用者名稱(可選)
建立mysql使用者組和使用者名稱,相關命令如下:
groupadd mysql
useradd -g -r mysql mysql
3.解壓,指定目錄
將mysql安裝包上傳到centos系統的目錄/usr/local/,解壓軟體包。將解壓後生成的目錄,改名為mysql,/usr/local/mysql就是MySQL資料庫的安裝目錄(basedir)。
cd /usr/local/ #進入安裝目錄,安裝包已經放在這裡
tar -vxfz mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz #解壓
mv mysql-5.7.15-linux-glibc2.5-x86_64 mysql #改名為mysql
4.建立mysql資料目錄和日誌目錄
mysql在初始化資料庫的時候會用到該資料目錄
mkdir /usr/local/data #資料目錄mkdir /usr/local/logs #日誌目錄
5.更改目錄許可權
修改相關目錄為mysql專屬使用者組和使用者名稱
chown -R mysql:mysql /usr/local/mysql
6.建立my.cnf檔案
vi /etc/my.cnf
#檔案內容:
[client]
port=3306
socket=/tmp/mysql.sock
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
pid-file=/usr/local/mysql-5.7.16/data/mysql.pid
log_error=/usr/local/mysql-5.7.16/logs/mysql-error.log
default-character-set=utf8 #配置字元編碼 (這行可能有問題 需注意)
port=3306
server_id=10
user=mysql
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
7.初始化mysql
進入資料庫目錄,以下配置都在/usr/local/mysql下,完成初始化:
#初始化命令1
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --innodb_undo_tablespaces=3 --explicit_defaults_for_timestamp #初始化命令2 bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
等待初始化後,如果配置了my.cnf的log_error,那麼初始密碼在log_error檔案中,否則會打印出來。檢視日誌檔案會看到A temporary is generated for [email protected]:u_7UR<%ox- 。MySQL初始化完成後,就可以使用這個密碼,在本機通過root使用者登入。
8.配置啟動檔案,啟動MySQL服務
Mysql的啟動檔案mysql.server放在mysql原始碼包中,如下目錄/usr/local/mysql/support-files,複製該檔案同時改名為mysql到/etc/init.d/mysql:
#拷貝啟動服務命令
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
#啟動mysql服務/etc/init.d/mysql
9.配置環境變數和開機自啟動
配置環境變數:
vim /etc/profile
#在檔案最後加上下面兩句話export mysql_home=/usr/local/mysql
export PATH=$PATH:$mysql_home/bin (也可以不用vi開啟檔案修改,直接在shell執行命令也可以完成配置:echo "export PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile) #修改檔案,使配置立即生效source /etc/profile
設定開機自啟動:
chkconfig --add mysql #新增mysql服務到開機自啟動列表
chkconfig mysql on #開機自動啟動
10.登入mysql服務
mysql -uroot -p #這裡直接回車password: #輸入從日誌檔案裡面的初始化密碼
登入後,在重設密碼之前,什麼都不能幹,所以要重設祕密:
mysql>alter user [email protected]localhost identified by '你的密碼';
這之後就可以正常進行資料庫的各種操作了。
注意在5.7中儲存密碼的欄位不再是password了,變成了authentication_string,如果要修改密碼,就要執行下面的語句:
update mysql.user set authentication_string=password("root") where user="root";
參考連結:
http://blog.chinaunix.net/uid-25909722-id-4605091.html
http://www.th7.cn/system/lin/201607/172036.shtml
http://dev.mysql.com/downloads/mysql/
http://blog.sina.com.cn/s/blog_4b50392101017wln.html