這篇文章主要為大家詳細介紹了linux下多個mysql5.7.19tar.gz安裝教程,具有一定的參考價值,有興趣的小伙伴們可以參考一下
初級第一次在Linux下安裝MySQL-5.7.19版本教學請看上一篇,如果已經會安裝了,那麼請看這篇linux下安裝多個mysql-5.7.19
環境:centos 6.5
1-下載
#2-跳過登陸
3-1安裝多個資料庫需要設定自己的my.cnf,如果只安裝一個,系統沒有安裝過直接這個指令就可以
shell> groupadd mysql shell> useradd -r -g mysql -s /bin/false mysql 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 查看下有没有data目录如果没有的话增加个命令(mkdir data) shell> chmod 750 mysql-files shell> chown -R mysql . shell> chgrp -R mysql . shell> bin/mysql_install_db --user=mysql # MySQL 5.7.5 shell> bin/mysqld --initialize --user=mysql # MySQL 5.7.6 and up 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
安裝好了就可以直接跳到登陸步驟5
下面說安裝多個mysql情況:
3-2安裝多個資料庫需要安照如下指令:
1-增加設定檔my.cnf (在mysql目錄下指令touch my.cnf):
下面設定檔可以直接使用貼上複製進去
#然後建立log檔/xcxyz/log/mysql/error.log
[mysqld] basedir= /usr/local/mysql-5.7.19-3307 datadir = /usr/local/mysql-5.7.19-3307/data port = 3307 character-set-server=utf8 server_id = 11 #该socket最好指定,不指定的话默认的话 是使用的默认的socket文件 而且登陆数据库的时候会有我下面的问题 socket = /tmp/mysql3307.sock log-error = /xcxyz/log/mysql/error.log pid-file = /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid
2-執行下列指令
2 -1增加使用者群組我的使用者和群組都使用的是mysqlosf這個隨意
shell> groupadd mysql shell> useradd -r -g mysql -s /bin/false mysql shell> cd /usr/local shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
2-2建立軟連線:
shell> ln -s full-path-to-mysql-VERSION-OS mysql shell> cd mysql shell> mkdir mysql-files
查看下有沒有data目錄如果沒有的話增加個指令(mkdir data)
2-3授權目前目錄:
shell> chmod 750 mysql-files shell> chown -R mysqlosf . shell> chgrp -R mysqlosf .
2-4編譯
bin/mysqld --defaults-file=/usr/local/full-path-to-mysql-VERSION-OS/my.cnf --initialize --user=mysqlosf
查看日誌輸出:vi /xcxyz/log/mysql/error.log
2017-07-24T03:13:47.933684Z 0 [Warning] TIMESTAMP with implicit DEFAULT value Plis depreusecated.ease is depreuse - -explicit_defaults_for_timestamp server option (see documentation for more details).
2017-07-24T03:13:49.979892Z 0 [Warning] InnoDB: New log files created, LSN=457913:457912: 50.262941Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-07-24T03:13:50.330756Z 0 [Warning] No existing UUID has this 長度server has been started. Generating a new UUID: 1d702294-701e-11e7-98a1-00163e30bbf6.
2017-07-24T03:13:50.340474Z 03:07-24T03:13:50.340474Z 03:13:50.340474Z 03:13:50.340474Z 0340474Z。 gtid_executed' cannot be opened.
2017-07-24T03:13:50.344419Z 1 [Note] A temporary password is generated for root@localhost: jZpgHhigx5># 2-5建立金鑰
shell> bin/mysql_ssl_rsa_setup --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf
2-6重新授權指派
shell> chown -R root . shell> chown -R mysql data mysql-files
2-7啟動後台mysql
bin/mysqld_safe --defaults-file=/usr/local/full-path-to-mysql-VERSION-OS/my.cnf --user=mysqlosf &
Next command is optional
#
shell> cp support-files/mysql.server /etc/init.d/mysql.server
2-8查看mysql是否啟動ps -ef | grep mysql
我這裡又出問題了哈哈,始終登陸不上去
5-登入MySQL之後,要求立即修改密碼,否則不能進行任何操作。執行下面的命令修改
'root'@'localhost'
#
SET PASSWORD = PASSWORD('root'); ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; flush privileges;
6-為了可以遠端登錄,增加一個'root'@ '%'帳號:
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
7-本機測試連線
如果像我上面一樣的話
原因是如下紅色框內的英文我的是第二個mysql需要指定socket和port,英文意思就是說如果你沒有指定socket的話那麼會選擇預設的因為我們安裝多個mysql 所以這個必須指定mysql --socket=/tmp/mysql3307.sock --port=3307 -uroot -p
如果這裡不小心遺失了密碼了或密碼過期了那麼可以透過這個方式重設密碼:
5-重置密码:
5-1关闭进程
kill `cat /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid`
5-2创建文件mysql-init
5-2-1文件内容
第一种内容:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'mysqlosf';
保存内容之后启动
代码如下:
bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --init-file=/usr/local/mysql-5.7.19-3307/mysql-init --user=mysqlosf &
如果上述内容不成功选择第二种内容
UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
保存内容之后启动
代码如下:
bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --init-file=/usr/local/mysql-5.7.19-3307/mysql-init --user=mysqlosf &
以上是多個mysql5.7.19(tar.gz)在linux下的安裝圖文教學詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!