欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一臺服務器部署兩個獨立的mysql數(shù)據(jù)庫操作實例

 更新時間:2024年03月16日 10:00:58   作者:小鵬linux  
這篇文章主要給大家介紹了關于一臺服務器部署兩個獨立的mysql數(shù)據(jù)庫的相關資料,同一臺服務器裝兩個數(shù)據(jù)庫,可以通過虛擬化技術實現(xiàn),文中通過代碼介紹的非常詳細,需要的朋友可以參考下

1 背景

公司進行壓測和業(yè)務測試時候資源有限,兩個環(huán)境都部署在一臺服務器上,但是需要為了做業(yè)務測試不影響到壓測測試,所有業(yè)務測試調用數(shù)據(jù)庫要和壓測的庫分開。

這個時候就需要在這臺服務器上部署兩個mysql實例,然后分別有不同的配置文件,調用不同的數(shù)據(jù)文件。這樣頂多需要考慮服務器的性能問題而已,兩組測試互不干擾。

2 安裝MySQL

先看看是否已安裝過(自帶),如果已安裝過,先卸載干凈;然后檢查安裝環(huán)境是否支持,重新安裝;

# 先查找一下系統(tǒng)有沒有mysql包,以免影響后續(xù)安裝使用
[root@xiaopeng ~]# rpm -qa | grep mysql     #沒有輸出任何內容說明沒有mysql包
[root@xiaopeng ~]# rpm -qa | grep mariadb   #我的系統(tǒng)輸出了如下兩個包,那么就需要清理掉
mariadb-libs-5.5.68-1.el7.x86_64
mariadb-5.5.68-1.el7.x86_64
[root@xiaopeng ~]# rpm -e  mariadb-libs-5.5.68-1.el7.x86_64 --nodeps
[root@xiaopeng ~]# rpm -e  mariadb-5.5.68-1.el7.x86_64 --nodeps
[root@xiaopeng ~]# rpm -qa | grep mariadb   #刪除之后再查看就沒有任何mariadb的包了
[root@xiaopeng ~]#
[root@xiaopeng ~]# chmod -R 755 /tmp        # 增加文件操作權限,安裝MySQL后MySQL會用戶在/tmp目錄下新建tmp_db文件,需要給/tmp目錄較大的權限操作
?
# 檢查系統(tǒng)中是否存在一些安裝MySQL時需要的依賴庫
[root@xiaopeng ~]# rpm -qa|grep libaio      #我的系統(tǒng)檢查發(fā)現(xiàn)有l(wèi)ibaio依賴包
libaio-0.3.109-13.el7.x86_64
[root@xiaopeng ~]# rpm -qa|grep net-tools   #我的系統(tǒng)檢查發(fā)現(xiàn)有net-tools依賴包(就是netstat命令)
net-tools-2.0-0.25.20131004git.el7.x86_64
# 如果不存在則執(zhí)行yum -y install libaio net-tools安裝即可 

2 進行mysql安裝

# 首先創(chuàng)建mysql用戶和用戶組
[root@xiaopeng ~]# groupadd mysql       #創(chuàng)建一個組,組名叫mysql
[root@xiaopeng ~]# useradd -r -g mysql -s /bin/false mysql  # 創(chuàng)建一個名為mysql的系統(tǒng)用戶,該用戶屬于mysql組,但不能登錄系統(tǒng)。主要用來安裝和配置MySQL數(shù)據(jù)庫服務時使用。 
[root@xiaopeng ~]# cd /usr/local/       #進入安裝目錄
[root@xiaopeng local]# rz
# rz命令可以將windows的包上傳到linux的當前目前
#如果沒有這個命令的話執(zhí)行yum -y install lrzsz就能安裝上這個命令了

進行解壓縮

[root@xiaopeng local]# tar -zxf mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz  #解壓縮這個包
[root@xiaopeng local]# mv mysql-5.7.35-linux-glibc2.12-x86_64 mysql         #改名叫mysql

mysql服務安裝完畢

3 配置搭建3306、3307實例

創(chuàng)建3306、3307不同實例的數(shù)據(jù)存放路徑和配置等文件存放位置。

# 分別創(chuàng)建數(shù)據(jù)文件存放路徑
[root@xiaopeng local]# mkdir -p mysql/3306/data
[root@xiaopeng local]# mkdir -p mysql/3307/data
?
# 分別創(chuàng)建日志存放路徑
[root@xiaopeng local]# mkdir -p mysql/3306/log
[root@xiaopeng local]# mkdir -p mysql/3307/log
?
# 分別創(chuàng)建兩個mysql的配置文件
[root@xiaopeng local]# vim mysql/3306/my.cnf
[mysqld]
port=3306               #實例1的服務端口為3306
user=mysql              #用戶名mysql
basedir=/usr/local/mysql        #mysql服務安裝路徑
datadir=/usr/local/mysql/3306/data  #實例1的數(shù)據(jù)存放路徑
lower_case_table_names=1
innodb_buffer_pool_size=128M
socket=/tmp/mysql_3306.sock     #sock文件最后放在此目錄下,否則連接mysql的時候還需要--socket=路徑來指定sock文件的位置,很麻煩
explicit_defaults_for_timestamp=true
symbolic-links=0
log-error=/usr/local/mysql/3306/log/mysqld.log
pid-file=/usr/local/mysql/3306/run/mysqld.pid
character_set_server=utf8mb4
init_connect='SET NAMES utf8mb4'
?
[root@xiaopeng local]# vim mysql/3307/my.cnf
[mysqld]
port=3307                               #實例1的服務端口為3307
user=mysql                              #用戶名mysql
basedir=/usr/local/mysql                #mysql服務安裝路徑
datadir=/usr/local/mysql/3307/data      #實例1的數(shù)據(jù)存放路徑
lower_case_table_names=1
innodb_buffer_pool_size=128M
socket=/tmp/mysql_3307.sock             #sock文件最后放在此目錄下,否則連接mysql的時候還需要--socket=路徑來指定sock文件的位置,很麻煩
explicit_defaults_for_timestamp=true
symbolic-links=0
log-error=/usr/local/mysql/3307/log/mysqld.log
pid-file=/usr/local/mysql/3307/run/mysqld.pid
character_set_server=utf8mb4
init_connect='SET NAMES utf8mb4'
?
# 修改整個目錄及子文件的所有者所屬組為mysql
[root@xiaopeng local]# chown -R mysql:mysql /usr/local/mysql
[root@xiaopeng local]# ll 
[root@xiaopeng local]# cd mysql
[root@xiaopeng mysql]# tree 3306                #想用tree命令查看一下目錄結構,顯示沒有這個命令
-bash: tree: 未找到命令
[root@xiaopeng mysql]# yum -y install tree       #那就下載一個
[root@xiaopeng mysql]# tree 3306                #再查看一下就顯示了,配置文件和數(shù)據(jù)存放目錄都完全隔離了
3306
├── data
└── my.cnf
[root@xiaopeng mysql]# tree 3307
3307
├── data
└── my.cnf

4 設置mysql系統(tǒng)環(huán)境變量

# 設置系統(tǒng)環(huán)境變量
[root@xiaopeng mysql]# vim /etc/profile         # 在文件末尾添加下面信息
export PATH=/usr/local/mysql/bin:$PATH
?
[root@xiaopeng mysql]# source /etc/profile      #加載一下使環(huán)境變量生效

5 分別初始化兩個mysql數(shù)據(jù)庫:

# 初始化3306實例數(shù)據(jù)庫  
# 指定配置文件的位置、安裝目錄、數(shù)據(jù)存放路徑
# 注意,初始化結束的最后一行記錄了root的密碼,復制到記事本
[root@xiaopeng mysql]# /usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/3306/my.cnf --initialize --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/3306/data
?
[root@xiaopeng mysql]# /usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/3306/my.cnf --initialize --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/3307/data
?
# 啟動數(shù)據(jù)庫實例3306、3307并放入后臺
[root@xiaopeng mysql]# nohup /usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/3306/my.cnf --user=mysql &
[root@xiaopeng mysql]# nohup /usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/3307/my.cnf --user=mysql &

6 登錄兩個mysql

[root@xiaopeng mysql]# mysql -uroot -p'7VSb@4FUd^28U2KL' -h127.0.0.1 -p -P3306      
#3VSb@4FUd^28U2KL為初始化結束后復制的密碼
[root@xiaopeng mysql]# mysql -uroot -p'9dTJylD*4s2ARdtx' -h127.0.0.1 -p -P3307      
#9dTJylD*4s2ARdtx為初始化結束后復制的密碼

6 擴展

1、如果要修改root密碼,使用如下命令

# 先登錄到mysql中,然后執(zhí)行如下命令
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('新密碼');
# 一定要注意括號引號分號等符號是英文格式的

2、如果sock文件放在了其他目錄下

mysql -uroot -p'密碼' -h 127.0.0.1 --socket=/usr/local/data/mysql/tmp/mysql.sock --port=3306
# --socket=后面跟上sock文件的絕對路徑
?
# 備份3306中的xiaopenglinux數(shù)據(jù)庫
mysqldump -uroot -p'密碼'  xiaopenglinux  > /usr/local/data/mysql/mysqlBackups/xiaopenglinux.sql --socket=/usr/local/data/mysql/tmp/mysql.sock --port=3306
?
# 還原xiaopenglinux數(shù)據(jù)庫到3307數(shù)據(jù)庫中
mysql -uroot -p'密碼' < xiaopenglinux.sql --socket=/usr/local/data/mysql/tmp/mysql.sock --port=3307

3、創(chuàng)建普通用戶并賦予權限

create user lark_test@'%' identified by '0dAJylD*a3C8Rdtx';
show grants for "username"@"localhost";
# username  用戶名
# localhost 用戶的本地權限
show grants for "username"@"%";
# %         代表用戶的外部連接權限
?
#   ALL: 允許進行任何操作(擁有root權限)
#   USAGE: 只允許登錄--無其他任何權限(一般新創(chuàng)建的用戶是沒有任何權限的)
grant all privileges on *.* to '用戶'@'127.0.0.1' identified by '密碼';
# 賦予新用戶,從本地操作所有數(shù)據(jù)庫,所有數(shù)據(jù)表的所有權限
grant all privileges on *.* to 'chai'@'%' identified by '666666';
# 賦予新用戶,從外部操作所有數(shù)據(jù)庫,所有數(shù)據(jù)表的所有權限(沒有外部客戶端的IP限制,但本地有限制)
?
flush privileges;
#刷新權限,使權限立即生效

總結 

到此這篇關于一臺服務器部署兩個獨立的mysql數(shù)據(jù)庫的文章就介紹到這了,更多相關服務器部署兩個獨立mysql內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • mysql排名的三種常見方式

    mysql排名的三種常見方式

    這篇文章主要介紹了mysql排名的三種常見方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • 基于MySQL架構圖解

    基于MySQL架構圖解

    這篇文章主要介紹了基于MySQL架構圖解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Mysql索引會失效的幾種情況分析

    Mysql索引會失效的幾種情況分析

    在做項目的過程中,難免會遇到明明給mysql建立了索引,可是查詢還是很緩慢的情況出現(xiàn),下面我們來具體分析下這種情況出現(xiàn)的原因及解決方法
    2014-06-06
  • 多次執(zhí)行mysql_fetch_array()的指針歸位問題探討

    多次執(zhí)行mysql_fetch_array()的指針歸位問題探討

    多次執(zhí)行mysql_fetch_array(),在第二次執(zhí)行的時候,如果不加處理,就不會輸出任何內容,這種情況下只需要對循環(huán)指針進行復位即可,感興趣的朋友可以了解下啊,或許對你有所幫助
    2013-01-01
  • mysql 5.7.20 win64 安裝及配置方法

    mysql 5.7.20 win64 安裝及配置方法

    這篇文章主要介紹了mysql 5.7.20 win64 安裝及配置方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-11-11
  • mysql 觸發(fā)器用法實例詳解

    mysql 觸發(fā)器用法實例詳解

    這篇文章主要介紹了mysql 觸發(fā)器用法實例詳解的相關資料,需要的朋友可以參考下
    2017-06-06
  • SQL查詢至少連續(xù)七天下單的用戶

    SQL查詢至少連續(xù)七天下單的用戶

    這篇文章介紹了SQL查詢至少連續(xù)七天下單用戶的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01
  • Mysqlslap MySQL壓力測試工具 簡單教程

    Mysqlslap MySQL壓力測試工具 簡單教程

    Mysqlslap是從5.1.4版開始的一個MySQL官方提供的壓力測試工具。通過模擬多個并發(fā)客戶端訪問MySQL來執(zhí)行壓力測試,同時詳細的提供了“高負荷攻擊MySQL”的數(shù)據(jù)性能報告。并且能很好的對比多個存儲引擎在相同環(huán)境下的并發(fā)壓力性能差別
    2011-10-10
  • MySQL8.0中binlog的深入講解

    MySQL8.0中binlog的深入講解

    這篇文章主要給大家介紹了MySQL8.0中binlog的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-10-10
  • 解讀數(shù)據(jù)庫的嵌套查詢的性能問題

    解讀數(shù)據(jù)庫的嵌套查詢的性能問題

    這篇文章主要介紹了解讀數(shù)據(jù)庫的嵌套查詢的性能問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03

最新評論