初級第一次在linux下安裝mysql-5.7.19版本教程,如果已經會安裝了,那么請看下一篇linux下安裝多個mysql-5.7.19
環境:centos 6.5
1、下載
2、跳過登陸
3、上傳并解壓到目錄../usr/local/mysql-5.7.19-3307
4、添加系統mysql組和mysql用戶:
執行命令:
1
|
groupadd mysqlosf和 useradd -r -g mysqlosf mysqlosf |
5、授權當前目錄給組用戶mysqlosf
1
|
chown -R mysqlosf:mysqlosf . |
執行紅框內的兩個命令發現都不行 觀察報錯原因意思是找不到路徑 這里的原因是默認選擇安裝到usr/lcoal/mysql
因為我們一個系統可能安裝多個數據庫 一主多從 或者多主多從 ,我這里也是因為有了一個mysql那么我在安裝的時候就不會使用它默認的路徑以及端口3306,選擇了自定義路徑usr/,那么我們發現新版本的mysql這里就會有問題。
那么我查看了mysqld執行文件,結果很遺憾,那么我看到了在support-files下面有個mysql.server這里面有個紅色框內說的特別好,那么我們理解他就是配置文件默認的,然后紅色框內是描述:
大意翻譯:如果你安裝mysql在其他路徑 而不是usr/local/mysql,那么你必須做以下的事情 運行這個腳本在mysql安裝的目錄,創建一個 /etc/my.cnf文件和以下信息
1
2
|
[mysqld] basedir=<path-to-mysql-installation-directory> |
添加上述的內容到任意其他的配置文件 例如 ~/.my.ini
并且copy my_print_defaults 到 /usr/bin 添加這個路徑到安裝目錄的基本路徑,如果你想要影響其他變量你應該啊做些改變在etc/my.cnf 或其他配置信息。
如果你改變了基本目錄,你必須也改datadir數據目錄,這些會是設置的默認配置文件被重寫。
但是相同道理我發現個可惡的事情,假如說現在你安裝這個安裝了那么再來一個mysql呢也是這么安裝,到etc/my.cnf嗎?可以發現這里其實他想表達的只是如果你需要只是安裝一個mysql的話那么安照剛才上面所述的就可以了,但是我們現在要安裝多個,那么肯定這樣是不可以的,但是配置文件肯定
6、得需要 先在mysql-5.7.19-3307目錄下創建my.cnf配置文件如下圖:
7、然后開始初始化3307端口上的mysql:
然后提示信息如圖:
2017-07-20T03:34:58.140832Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-07-20T03:35:00.213126Z 0 [Warning] InnoDB: New log files created, LSN=45790
2017-07-20T03:35:00.482183Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-07-20T03:35:00.554451Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 68e5e3b4-6cfc-11e7-a9af-00163e30bbf6.
2017-07-20T03:35:00.557933Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2017-07-20T03:35:00.562343Z 1 [Note] A temporary password is generated for root@localhost:
hgPcBW?Xf86b(臨時數據庫密碼新版本數據庫為了加強安全性)
------------
8、生成密鑰:
1
|
bin /mysql_ssl_rsa_setup --defaults- file = /usr/local/mysql-5 .7.19-3307 /my .cnf |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
Generating a 2048 bit RSA private key ........................................................................................+++ ................................................................+++ writing new private key to 'ca-key.pem' ----- Generating a 2048 bit RSA private key ............................+++ ....+++ writing new private key to 'server-key.pem' ----- Generating a 2048 bit RSA private key ...........................................................................................+++ ......................................................................+++ writing new private key to 'client-key.pem' ----- |
9、補之前的目錄 哈哈之前沒有創建不知道影響啥
1
2
3
4
|
mkdir mysql-files chmod 750 mysql-files chown -R root . chown -R mysqlosf data mysql-files |
10、啟動mysql后臺進行
1
|
bin /mysqld_safe --user=mysqlosf & |
1
2
3
4
|
[1] 28106 [root@iZ2ze2jvzepskyobjmavtiZ mysql-5.7.19-3307] # 2017-07-20T04:01:40.623159Z mysqld_safe Logging to '/alidata/log/mysql/error.log'. 2017-07-20T04:01:40.679386Z mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql-5 .7.19-3307 /data 2017-07-20T04:01:40.868828Z mysqld_safe mysqld from pid file /usr/local/mysql-5 .7.19-3307 /data/iZ2ze2jvzepskyobjmavtiZ .pid ended |
11、 Next command is optional
1
|
shell> cp support-files/mysql.server /etc/init.d/mysql.server |
12-開始登錄mysql進行相關操作
1
|
bin /mysql -uroot -p |
輸入密碼就是:初始化端口的時候提示的
但是拒絕了,發現上面的sql啟動的時候有問題msyqld_safe 。。。。ended
也就是說沒有啟動起來,查看下:(果然沒有哈哈 那么遇見問題了繼續解決唄)
使用root用戶登陸沒有報錯但是一直是這狀態 沒有成功
查看狀態啟動了但是發現有個問題就是socket兩個相同不過不是一個端口也是可以存在的繼續走試試
成功了應該就是剛才的那個mysqlosf我沒有賦值權限成功。。。我的天呢
13、登錄MySQL之后,要求立即修改密碼,否則不能進行任何操作。執行下面的命令修改'root'@'localhost'的密碼:
1
2
3
|
SET PASSWORD = PASSWORD( 'root' ); ALTER USER 'root' @ 'localhost' PASSWORD EXPIRE NEVER; flush privileges; |
14、為了可以遠程登錄,增加一個'root'@'%'賬號:
1
|
grant all privileges on *.* to 'root' @ '%' identified by 'root' with grant option; |
15、本地測試連接
按照上面的辦法,繼續解壓安裝mysql-5.7.19-linux-glibc2.5-x86_64.tar.gz,并且配置為3308,3309端口,就可以安裝多個mysql了。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。