最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在同一Linux下安裝兩個(gè)版本的MySQL的流程步驟

 更新時(shí)間:2024年03月11日 09:57:58   作者:冷呀冷咖啡  
打工人奉旨制作數(shù)據(jù)庫(kù)服務(wù)的虛擬機(jī)模板,模板中包含各種數(shù)據(jù)庫(kù),其中mysql需要具備5.7及8.0兩個(gè)版本,并保證服務(wù)能正常同時(shí)使用,所以本文給小編介紹了在同一Linux下安裝兩個(gè)版本的MySQL的流程步驟,需要的朋友可以參考下

摘要:

打工人奉旨制作數(shù)據(jù)庫(kù)服務(wù)的虛擬機(jī)模板,模板中包含各種數(shù)據(jù)庫(kù),其中mysql需要具備5.7及8.0兩個(gè)版本,并保證服務(wù)能正常同時(shí)使用。此文也當(dāng)成一份筆記,方便后續(xù)自己查閱。

本次安裝基于截止于寫稿時(shí)最新的MySQL版本,mysql 5.7.41以及mysql 8.0.33,通過官方提供的編譯文件壓縮包(tar.gz),非rpm安裝文件。

1. 下載

官網(wǎng)MySQL :: Download MySQL Community Server (Archived Versions)下載需要版本的mysql

mysql-5.7.41-el7-x86_64.tar.gz

https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.41-el7-x86_64.tar.gz

mysql-8.0.33-el7-x86_64.tar.gz

https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.33-el7-x86_64.tar.gz

2. 安裝

2.1 準(zhǔn)備

2.1.1 路徑規(guī)劃

服務(wù)器上通過LVM掛在規(guī)劃 /u01 路徑用于安裝應(yīng)用,/u01路徑用于存儲(chǔ)數(shù)據(jù)

創(chuàng)建文件夾:

[root@localhost ~]# mkdir -p /u01/mysql  #安裝包解壓到此路徑下
[root@localhost ~]# mkdir -p /u02/mysql/mysq57/data
[root@localhost ~]# mkdir -p /u02/mysql/mysq57/logs
[root@localhost ~]# mkdir -p /u02/mysql/mysq80/data
[root@localhost ~]# mkdir -p /u02/mysql/mysq80/logs

2.1.2 解壓

將兩個(gè)tar.gz壓縮包上傳到服務(wù)器的/u01/mysql路徑下,解壓后得到與壓縮包名一致的文件夾,將文件夾重命名(主要為了路徑簡(jiǎn)短好記)

[root@localhost mysql]# tar -zxvf mysql-5.7.41-el7-x86_64.tar.gz
[root@localhost mysql]# mv mysql-5.7.41-el7-x86_64.tar.gz mysql-5.7.41
[root@localhost mysql]# tar -zxvf mysql-8.0.33-el7-x86_64.tar.gz
[root@localhost mysql]# mv mysql-8.0.33-el7-x86_64.tar.gz mysql-5.0.33

如下:(安裝完后我已將壓縮包刪除,并且安裝過程中會(huì)變更文件所有人,故下圖僅有兩個(gè)文件夾,且文件夾的所有者都是mysql,基于root操作的此時(shí)的所有者應(yīng)該是root)

2.2 配置

2.2.1 刪除/重命名/etc/my.cnf

/etc/my.cnf是mysql默認(rèn)且優(yōu)先讀取的配置文件,第二順位是安裝路徑下的my.cnf,由于我們需要裝載兩個(gè)mysql且互不干擾,所以需要?jiǎng)h掉第一順位的配置文件。

2.2.2 為兩個(gè)mysql分別創(chuàng)建配置文件my.cnf

創(chuàng)建 /u01/mysql/mysql-5.7.41/my.cnf 以及 /u01/mysql/mysql-8.0.33/my.cnf,文件內(nèi)容如下:

/u01/mysql/mysql-5.7.41/my.cnf:

[mysqld]
port=3357
user=mysql
basedir=/u01/mysql/mysql-5.7.41
datadir=/u02/mysg/mysgl57/data
socket=/tmp/mysql57.sock
log-error=/u02/mysql/mysql57/logs/mysql.err
pid-file=/u02/mysql/mysql57/mysql.pid
character_set_server=utf8mb4
lower_case_table_names=1
 
[mysqld_safe]
log-error=/u02/mysql/mysql57/logs/mysql.err
pid-file=/u02/mysql/mysql57/mysql.pid
tmpdir=/tmp/mysql57

/u01/mysql/mysql-8.0.33/my.cnf :

[mysqld]
port=3380
user=mysql
basedir=/u01/mysql/mysql-8.0.33
datadir=/u02/mysg/mysgl80/data
socket=/tmp/mysql80.sock
log-error=/u02/mysql/mysql80/logs/mysql.err
pid-file=/u02/mysql/mysql80/mysql.pid
character_set_server=utf8mb4
lower_case_table_names=1
 
[mysqld_safe]
log-error=/u02/mysql/mysql80/logs/mysql.err
pid-file=/u02/mysql/mysql80/mysql.pid
tmpdir=/tmp/mysql80

2.2.3 配置service啟動(dòng)文件

以mysql5.7.41為例,編輯 /u01/mysql/mysql-5.7.41/support-files/mysql.server 

將文件的第46、47、58、63、207行,將對(duì)應(yīng)信息配置為我們安裝的真實(shí)路徑,如下:

/u01/mysql/mysql-8.0.33/support-files/mysql.server 如是

將編輯好的/u01/mysql/mysql-5.7.41/support-files/mysql.server、/u01/mysql/mysql-8.0.33/support-files/mysql.server復(fù)制到 /etc/init.d/ 下,并命名為 mysql57 和 mysql80,后面通過service命令啟動(dòng)服務(wù)會(huì)用到

[root@localhost ~]# cp /u01/mysql/mysql-5.7.33/support-files/mysql.server /etc/init.d/mysql57
[root@localhost ~]# cp /u01/mysql/mysql-8.0.33/support-files/mysql.server /etc/init.d/mysql80

2.2.4 創(chuàng)建mysql用戶并更改路徑所有者

[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql mysql
[root@localhost ~]# chown -R mysql.mysql /u01/mysql
[root@localhost ~]# chown -R mysql.mysql /u02/mysql

2.3 初始化數(shù)據(jù)庫(kù)

進(jìn)入到安裝路徑下的bin目錄,以mysql 5.7.41為例

[root@localhost ~]# cd /u01/mysql/mysql-5.7.41/bin
[root@localhost bin]# ./mysqld --defaults-file=/u01/mysql/mysql-5.7.41/my.cnf --basedir=/u01/mysql/mysql-5.7.41 --datadir=/u02/mysql/mysql57/data --user=mysql --initialize
[root@localhost bin]# service mysql57 start
Starting MySQL.....SUCCESS!

至此,mysql5.7.41安裝并啟動(dòng)成功,mysql8.0.33如是,最后通過service msyql80 start 進(jìn)行啟動(dòng)

3. 登錄數(shù)據(jù)庫(kù)服務(wù)器

在數(shù)據(jù)庫(kù)初始化過程中,會(huì)隨機(jī)生成root密碼,記錄在我們配置的log-error文件中

[root@localhost bin]# cat /u02/mysql/mysql57/logs/mysql.err | grep password
2023-07-19T08:23:56.987382Z 1 [Note] A temporary password is generated for root@localhost: #Bdm6F?J!2

信息中顯示的【#Bdm6F?J!2】就是初次登錄需要用到的密碼,登錄mysql5.7.41數(shù)據(jù)庫(kù)并修改root的密碼,打開遠(yuǎn)程訪問限制(依然在安裝目錄的bin目錄下)

[root@localhost ~]# cd /u01/mysql/mysql-5.7.41/bin
[root@localhost bin]# ./mysql -uroot -p -S /tmp/mysql57.sock
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.41
 
Copyright (c) 2000, 2023, Oracle and/or its affiliates.
 
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
mysql> set password = password('root.123');  #修改root密碼
Query OK, 0 rows affected, 1 warning (0.00 sec)
 
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
 
Database changed
mysql> update user set host = '%' where user='root';  #開啟root的遠(yuǎn)程訪問權(quán)限
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
 
mysql> flush privileges;
Query OK, 0 rows affected (0.02 sec)
 
mysql> exit
Bye
[root@localhost bin]# service mysql57 restart  #重啟服務(wù)

mysql 8.0.33操作類似,但需要注意的是8.0版本在首次登錄時(shí)修改密碼的語法與5.7的不一樣,下面是mysql 8.0.33首次登錄及修改密碼的過程:

[root@localhost ~]# cd /u01/mysql/mysql-8.0.33/bin
[root@localhost bin]# ./mysql -u root -p -S /tmp/mysql80.sock
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.33
 
Copyright (c) 2000, 2023, Oracle and/or its affiliates.
 
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
mysql> alter user 'root'@'localhost' identified by 'root.123';
Query OK, 0 rows affected (0.08 sec)
 
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
 
Database changed
mysql> update user set host= '%' where user='root';
Query OK, 1 row affected (0.05 sec)
Rows matched: 1  Changed: 1  Warnings: 0
 
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
 
mysql> exit
Bye
[root@localhost bin]# service mysql80 restart
Shutting down MySQL.. SUCCESS! 
Starting MySQL...... SUCCESS!

4. 創(chuàng)建MySQL命令行的軟連接

類似第3章中進(jìn)入到mysql安裝路徑的bin目錄中執(zhí)行 ./mysql xxxx 來進(jìn)行登錄,我們需要的是在任意目錄下都可以通過mysql命令進(jìn)行登錄,有兩種解決辦法:

1. 在 /usr/bin 目錄下創(chuàng)建 /u01/mysql/mysql-8.0.33/bin/mysql 的軟連接

[root@localhost ~]# ln -s /u01/mysql/mysql-8.0.33/bin/mysql /usr/bin/mysql

2. 將 mysql8.0.33的bin目錄加入到PATH當(dāng)中

[root@localhost ~]# export PATH=$PATH:/u01/mysql/mysql-8.0.33/bin/

我個(gè)人是將5.7和8.0下的mysql分別創(chuàng)建了軟連接,因?yàn)槲乙策€沒搞清楚,通過8.0的客戶端指令登錄5.7的服務(wù)能不能兼容,反正指定了socket也能正常登錄,但總覺得還是會(huì)有點(diǎn)區(qū)別,反正方法都在上面,大家自行甄別。

另:將bin加入到PATH還有個(gè)好處就是其他命令,比如mysqldump啥的也能用,就是需要指定不同的socket

創(chuàng)建完成后即可在任意目錄下通過指定不同的socket,進(jìn)入不同版本的mysql

[root@localhost ~]# mysql -u root -p -S /tmp/mysql80.sock
## 或者
[root@localhost ~]# mysql -u root -p -S /tmp/mysql57.sock

當(dāng)然,不想每次都輸入socket也是可以偷懶的,哈哈哈哈哈哈哈哈哈哈哈,方法就是通過alias別名的方式默認(rèn)加上socket,方法如下:

針對(duì)所有用戶,可編輯 /etc/bashrc 文件,只針對(duì)root用戶,可編輯 /root/.bashrc,針對(duì)其他個(gè)別用戶,可編輯 /home/[用戶名]/.bashrc

[root@localhost ~]# vim .bashrc
### 添加
alias mysql80='mysql -S /tmp/mysql80.sock'
alias mysql57='mysql -S /tmp/mysql57.sock'
### Esc + wq! 保存退出
[root@localhost ~]# source .bashrc

至此,就可直接通過 mysql80 -u root -p 命令登錄mysql 8.0服務(wù),通過 mysql57 -u root -p 命令登錄mysql 5.7服務(wù)

當(dāng)然還有一些其他的可增加易用的方法,比如將服務(wù)添加到systemctl,或者通過mysqld_multi來管理多個(gè)服務(wù),后續(xù)有時(shí)間再研究吧。

以上就是在同一Linux下安裝兩個(gè)版本的MySQL的流程步驟的詳細(xì)內(nèi)容,更多關(guān)于Linux安裝兩個(gè)版本MySQL的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • mysql慢查詢使用詳解

    mysql慢查詢使用詳解

    慢查詢是我們?cè)趍ysql中經(jīng)常需要使用到的一個(gè)很方便的功能,慢查詢對(duì)于跟蹤有問題的查詢很有用,可以分析出當(dāng)前程序里那些Sql語句比較耗費(fèi)資源。
    2014-12-12
  • MySQL PHP 語法詳解及實(shí)例代碼

    MySQL PHP 語法詳解及實(shí)例代碼

    這篇文章主要介紹了MySQL PHP 語法詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • mysql查詢鎖表的實(shí)現(xiàn)方法

    mysql查詢鎖表的實(shí)現(xiàn)方法

    本文主要介紹了mysql查詢鎖表的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-09-09
  • MySQL億級(jí)大表安全添加字段的三種方案

    MySQL億級(jí)大表安全添加字段的三種方案

    面對(duì)?1.35億條數(shù)據(jù)?的?MySQL?表添加字段,傳統(tǒng)?ALTER?TABLE?可能導(dǎo)致長(zhǎng)時(shí)間鎖表,嚴(yán)重影響業(yè)務(wù),本文將提供一套完整的?零停機(jī)方案,涵蓋?Online?DDL?優(yōu)化、專業(yè)工具使用?和?Java?應(yīng)用層配合策略,需要的朋友可以參考下
    2025-03-03
  • mysql創(chuàng)建Bitmap_Join_Indexes中的約束與索引

    mysql創(chuàng)建Bitmap_Join_Indexes中的約束與索引

    現(xiàn)象:創(chuàng)建Bitmap Join Indexes時(shí)出現(xiàn)ORA-25954報(bào)錯(cuò): 維的主鍵或唯一約束條件缺失。 53vi.Com 原因:受到約束與索引的影響。
    2008-04-04
  • mysql 數(shù)據(jù)插入優(yōu)化方法

    mysql 數(shù)據(jù)插入優(yōu)化方法

    當(dāng)一個(gè)線程對(duì)一個(gè)表執(zhí)行一個(gè)DELAYED語句時(shí),如果不存在這樣的處理程序,一個(gè)處理器線程被創(chuàng)建以處理對(duì)于該表的所有DELAYED語句。
    2010-12-12
  • Mysql臟頁flush及收縮表空間原理解析

    Mysql臟頁flush及收縮表空間原理解析

    這篇文章主要介紹了Mysql臟頁flush及收縮表空間原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • MySQL中的FIND_IN_SET函數(shù)的使用場(chǎng)景

    MySQL中的FIND_IN_SET函數(shù)的使用場(chǎng)景

    MySQL 中的?FIND_IN_SET()?函數(shù)用于在一個(gè)逗號(hào)分隔的字符串列表中查找指定的值,并返回其在列表中的位置,下面就來介紹一下FIND_IN_SET函數(shù)的具體使用,感興趣的可以了解一下
    2024-05-05
  • CentOS系統(tǒng)中MySQL安裝完整步驟詳解

    CentOS系統(tǒng)中MySQL安裝完整步驟詳解

    在?CentOS?系統(tǒng)上安裝?MySQL,需要依次進(jìn)行環(huán)境檢查、軟件源配置、安裝?MySQL、啟動(dòng)服務(wù)等操作,我將按照規(guī)范流程,為你詳細(xì)分享完整且具體的安裝步驟,感興趣的朋友一起看看吧
    2025-04-04
  • 淺談Mysql哪些字段適合建立索引

    淺談Mysql哪些字段適合建立索引

    這篇文章主要介紹了淺談Mysql哪些字段適合建立索引,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02

最新評(píng)論

大同县| 武威市| 云南省| 玉树县| 确山县| 宝鸡市| 黎城县| 漾濞| 阿克陶县| 铜陵市| 长寿区| 永宁县| 汉源县| 全州县| 新营市| 房产| 冷水江市| 阿坝县| 承德县| 搜索| 延庆县| 惠水县| 连云港市| 渭源县| 广安市| 克山县| 呼图壁县| 韩城市| 潍坊市| 政和县| 浦东新区| 申扎县| 鄂温| 广德县| 安义县| 融水| 高密市| 陆河县| 娱乐| 洪江市| 龙陵县|