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

Mysql的MHA實(shí)戰(zhàn)指南

 更新時(shí)間:2025年12月10日 09:35:00   作者:不想畫(huà)圖  
本文系統(tǒng)講解 MHA 的組件、原理與作用,通過(guò)環(huán)境準(zhǔn)備、依賴配置、軟件安裝及監(jiān)控部署的完整實(shí)戰(zhàn),為 MySQL 高可用架構(gòu)搭建提供可落地的實(shí)施方案,感興趣的朋友跟隨小編一起看看吧

前言

MHA(Master High Availability)是 MySQL 高可用領(lǐng)域主流方案,可實(shí)現(xiàn)主庫(kù)故障自動(dòng)切換與數(shù)據(jù)一致性保障,本文從原理到實(shí)戰(zhàn)詳解其部署與運(yùn)維全流程。

一、MHA簡(jiǎn)介

  • MHA(Master High Availability)是一套優(yōu)秀的MySQL高可用環(huán)境下故障切換和主從復(fù)制的軟件。
  • MHA 的出現(xiàn)就是解決MySQL 單點(diǎn)的問(wèn)題。
  • MySQL故障切換過(guò)程中,MHA能做到0-30秒內(nèi)自動(dòng)完成故障切換操作。
  • MHA能在故障切換的過(guò)程中最大程度上保證數(shù)據(jù)的一致性,以達(dá)到真正意義上的高可用。

二、MHA組件組成

  • MHA Node(數(shù)據(jù)節(jié)點(diǎn))
    MHA Node 運(yùn)行在每臺(tái) MySQL 服務(wù)器上。
  • MHA Manager(管理節(jié)點(diǎn)) 檢測(cè)
    MHA Manager 可以單獨(dú)部署在一臺(tái)獨(dú)立的機(jī)器上,管理多個(gè) master- slave 集群;也可以部署在一臺(tái) slave 節(jié)點(diǎn)上。
    MHA Manager 會(huì)定時(shí)探測(cè)集群中的 master 節(jié)點(diǎn)。當(dāng) master 出現(xiàn)故障時(shí),它可以自動(dòng)將最新數(shù)據(jù)的 slave 提升為新的 master 然后將所有其他的 slave 重新指向新的 master。整個(gè)故障轉(zhuǎn)移過(guò)程對(duì)應(yīng)用程序完全透明。

三、MHA作用

  • 自動(dòng)故障切換過(guò)程中,MHA試圖從宕機(jī)的主服務(wù)器上保存二進(jìn)制日志,最大程度的保證數(shù)據(jù)不丟失
  • 使用半同步復(fù)制,可以大大降低數(shù)據(jù)丟失的風(fēng)險(xiǎn),如果只有一個(gè)slave已經(jīng)收到了最新的二進(jìn)制日志,MHA可以將最新的二進(jìn)制日志應(yīng)用于其他所有的slave服務(wù)器上,因此可以保證所有節(jié)點(diǎn)的數(shù)據(jù)一致性
  • 目前MHA支持一主多從架構(gòu),最少三臺(tái)服務(wù),即一主兩從MHA Manger 管理多組主從復(fù)制。

四、MHA工作原理

MHA工作原理總結(jié)如下:
1、從宕機(jī)崩潰的master 保存二進(jìn)制日志事件(binlog events);
2、識(shí)別含有最新的更新 slave 日志
3、應(yīng)用差異的中繼日志(relay log)到其他的slave
4、應(yīng)用從master保存的二進(jìn)制日志事件
5、提升一個(gè) salve 為新的master
6、使其他的slave連接行的master 進(jìn)行復(fù)制。

五、mysql的MHA實(shí)戰(zhàn)

1、基礎(chǔ)環(huán)境準(zhǔn)備(搭建前提)

1.1、服務(wù)器規(guī)劃和系統(tǒng)配置

服務(wù)器規(guī)劃
MHA manager 節(jié)點(diǎn)服務(wù)器:centos7.9 manager/192.168.10.104 安裝MHA node和manager組件
master節(jié)點(diǎn)服務(wù)器: centos7.9 mysql1/192.168.10.105 安裝mysql5.7、MHA node 組件
slave1節(jié)點(diǎn)服務(wù)器: centos7.9 mysql2/192.168.10.106 安裝mysql5.7、MHA node 組件
slave2節(jié)點(diǎn)服務(wù)器: centos7.9 mysql3/192.168.10.107 安裝mysql5.7、MHA node 組件

1.2、系統(tǒng)配置

1)關(guān)閉防火墻和selinux(四個(gè)節(jié)點(diǎn)服務(wù)器都配置)

systemctl stop firewalld
systemctl disable firewalld
setenforce 0
getenforce 

拓展-永久關(guān)閉增強(qiáng)服務(wù)配置:
vim /etc/sysconfig/selinux

2)設(shè)置主機(jī)名稱和主機(jī)名解析

#1在四臺(tái)節(jié)點(diǎn)分別更改主機(jī)名稱 
hostnamectl set-hostname manager #192.168.10.104
hostnamectl set-hostname master #192.168.10.105
hostnamectl set-hostname slave1 #192.168.10.106
hostnamectl set-hostname slave2 #192.168.10.107
hostname #查看主機(jī)名稱
#2設(shè)置域名解析(四個(gè)節(jié)點(diǎn)都設(shè)置),內(nèi)容都為
vim /etc/hosts
##寫入
192.168.10.104 manager
192.168.10.105 master
192.168.10.106 slave1
192.168.10.107 slave2

3)所有節(jié)點(diǎn)同步系統(tǒng)時(shí)間

yum install ntp -y 
#先關(guān)閉ntp服務(wù),同步阿里云時(shí)間。
#防止ntpd服務(wù)開(kāi)啟占用udP的123端口和ntpdate沖突,導(dǎo)致同步失敗
systemctl stop ntpd
ntpdate ntp.aliyun.com
systemctl start ntpd

成功同步時(shí)間如下所示:

為什么設(shè)置時(shí)間同步?
時(shí)間不同步會(huì)導(dǎo)致 binlog、復(fù)制日志時(shí)間錯(cuò)亂,MHA 無(wú)法準(zhǔn)確判斷主從狀態(tài)。

1.3、部署Mysql并配置主從復(fù)制

1)編譯安裝mysql5.7且master開(kāi)啟binlog
master開(kāi)啟binlog(my.cnf中配置log_bin=master-bin、server-id=1,從庫(kù)配置server-id=2,server-id=3)

# 1安裝依賴
yum install -y gcc gcc-c++ ncurses ncurses-devel bison cmake
# 2上傳文件mysql-5.7.17和boost_1_59_0到/opt/目錄,解壓壓縮包
cd /opt
tar zxvf mysql-5.7.17.tar.gz -C /opt
tar zxvf boost_1_59_0.tar.gz -C /usr/local/
mv /usr/local/boost_1_59_0 /usr/local/boost
# 3定制mysql
cd /opt/mysql-5.7.17/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=/usr/local/boost \
-DWITH_SYSTEMD=1
# 4編譯安裝
# make && make install
make -j 4 && make install # 4 指的是cpu核數(shù) “nproc輸出cpu核數(shù)”
# 5創(chuàng)建程序用戶管理mysql
useradd -s /sbin/nologin mysql
chown -R mysql:mysql /usr/local/mysql/
# 6修改配置文件
#更改管理主/組
chown mysql:mysql /etc/my.cnf
vim /etc/my.cnf	
# 寫入
[client]									
port = 3306
default-character-set=utf8
socket=/usr/local/mysql/mysql.sock	
[mysql]									
port = 3306
default-character-set=utf8
socket=/usr/local/mysql/mysql.sock
auto-rehash
[mysqld]
user = mysql 
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306	
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
# 7 設(shè)置mysql環(huán)境變量
echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile
# 8初始化數(shù)據(jù)庫(kù)
cd /usr/local/mysql/bin/
./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
# 9 啟動(dòng)服務(wù)
# 將 MySQL 注冊(cè)為 Linux 系統(tǒng)的 systemd 管理服務(wù)
# 復(fù)制 MySQL 的 systemd 服務(wù)配置文件到系統(tǒng)默認(rèn)目錄
cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
systemctl daemon-reload         #刷新識(shí)別     
systemctl start mysqld.service  #開(kāi)啟服務(wù)
systemctl enable mysqld         #開(kāi)機(jī)自啟動(dòng)
netstat -anpt | grep 3306       #查看端口
# 10 設(shè)置賬號(hào)密碼登入
#給root賬號(hào)設(shè)置密碼,跳出確認(rèn)選項(xiàng)-->直接回車
mysqladmin -u root -p password "123456" 
#登錄 
mysql -u root -p123456
  1. 配置主從復(fù)制
    master服務(wù)器配置
# 1 修改my.cnf配置
vi /etc/my.cnf
# 寫入
server-id = 1
log_bin=master-bin #開(kāi)啟二進(jìn)制文件
log_slave-updates=true #開(kāi)啟從服務(wù)器日志同步
binlog-format=MIXED
# 2 重啟服務(wù)
systemctl restart mysqld
# 3 設(shè)置myslave用戶,用于主從復(fù)制
mysql -uroot -p123456
GRANT REPLICATION SLAVE ON *.* TO 'myslave'@'192.168.10.%' IDENTIFIED BY
'123456';
flush privileges;
# 4 查看master狀態(tài),日志名稱和偏移量
show master status;

slave節(jié)點(diǎn)配置

#1設(shè)置數(shù)據(jù)庫(kù)配置文件
vi /etc/my.cnf
#寫入
log_bin=master-bin #開(kāi)啟二進(jìn)制日志文件
server_id = 22 #設(shè)置server_id。slave1為22,slave2 為23
relay-log=relay-log-bin # #從主服務(wù)器上同步日志文件記錄到本地
relay-log-index=slave-relay-bin.index #定義relay-log的位置和名稱(index索引)
relay_log_recovery = 1 #保證了relay-log 的完整性
#2重啟mysqld和登入mysql
systemctl restart mysqld
mysql -uroot -p123456
#3給「從節(jié)點(diǎn)」綁定「主節(jié)點(diǎn)」的同步信息
change master to 
master_host='192.168.10.105',master_user='myslave',master_password='123456',master_log_file='master-bin.000001',master_log_pos=603;
#4開(kāi)啟從節(jié)點(diǎn)
start slave;
#5、查看從服務(wù)器狀態(tài)
show slave status\G;

3)數(shù)據(jù)同步測(cè)試
查看master的數(shù)據(jù)庫(kù),并創(chuàng)建新的數(shù)據(jù)庫(kù)test

查看從節(jié)點(diǎn)是否同步創(chuàng)建數(shù)據(jù)庫(kù)test

1、slave1和slave2的my.cnf的[mysqld]配置:
read_only=1 # 從庫(kù)只讀(MHA 切換主庫(kù)時(shí)會(huì)自動(dòng)臨時(shí)關(guān)閉)
relay_log_purge=1 # 自動(dòng)清理中繼日志(避免磁盤滿)
2、所有節(jié)點(diǎn)注釋[client]里的
default-character-set=utf8 # mysqlbinlog 不識(shí)別該參數(shù)

1.4、在 Master、Slave1、Slave2 節(jié)點(diǎn)上都創(chuàng)建兩個(gè)軟鏈接

ln -s /usr/local/mysql/bin/mysql /usr/sbin/ 
ln -s /usr/local/mysql/bin/mysqlbinlog /usr/sbin/

1.5、賦權(quán)

# master、slave1、slave2操作
grant replication slave on *.* to 'myslave'@'192.168.10.%' identified by
'123456';
# master
grant all privileges on *.* to 'mha'@'192.168.10.%' identified by 'manager';
grant all privileges on *.* to 'mha'@'master' identified by 'manager';
grant all privileges on *.* to 'mha'@'slave1' identified by 'manager';
grant all privileges on *.* to 'mha'@'slave2' identified by 'manager';
flush privileges;

2、環(huán)境依賴

2.1、安裝perl相關(guān)依賴(四個(gè)節(jié)點(diǎn))

yum install epel-release --nogpgcheck -y
yum install -y perl-DBD-MySQL \
perl-Config-Tiny \
perl-Log-Dispatch \
perl-Parallel-ForkManager \
perl-ExtUtils-CBuilder \
perl-ExtUtils-MakeMaker \
perl-CPAN

2.2、配置ssh免密登入

在所有服務(wù)器上配置互相無(wú)密碼認(rèn)證

(1)在 manager 節(jié)點(diǎn)上配置到所有數(shù)據(jù)庫(kù)節(jié)點(diǎn)的無(wú)密碼認(rèn)證
ssh-keygen -t rsa #一路按回車鍵
ssh-copy-id 192.168.10.105
ssh-copy-id 192.168.10.106
ssh-copy-id 192.168.10.107
(2)在 master 上配置到數(shù)據(jù)庫(kù)節(jié)點(diǎn) slave1 和 slave2 的無(wú)密碼認(rèn)證
ssh-keygen -t rsa #一路按回車鍵
ssh-copy-id 192.168.10.106
ssh-copy-id 192.168.10.107
(3)在 slave1 上配置到數(shù)據(jù)庫(kù)節(jié)點(diǎn) master 和 slave2 的無(wú)密碼認(rèn)證
ssh-keygen -t rsa #一路按回車鍵
ssh-copy-id 192.168.10.105
ssh-copy-id 192.168.10.107
(4)在 slave2 上配置到數(shù)據(jù)庫(kù)節(jié)點(diǎn) master 和 slave1 的無(wú)密碼認(rèn)證
ssh-keygen -t rsa #一路按回車鍵
ssh-copy-id 192.168.10.105
ssh-copy-id 192.168.10.106

使用ssh root@目標(biāo)ip驗(yàn)證是否免密登入。
示例:在manager上,輸入 ssh root@192.168.10.105
驗(yàn)證manager和master的免密登入

3、MHA軟件安裝

3.1、安裝 MHA 管理端和節(jié)點(diǎn)端

node安裝(所有節(jié)點(diǎn))

# 1 所有節(jié)點(diǎn)先安裝node組件,manager 依賴 node 組件。
# 最后在 MHA-manager 節(jié)點(diǎn)上安裝 manager 組件
# manager 上傳解壓node
cd /opt
tar zxvf mha4mysql-node-0.57.tar.gz
cd mha4mysql-node-0.57
perl Makefile.PL #定義了編譯規(guī)則、安裝路徑、依賴關(guān)系等關(guān)鍵信息。
make && make install
#### scp 遠(yuǎn)程傳輸壓縮包到服務(wù)器
scp /opt/mha4mysql-node-0.57.tar.gz root@192.168.10.105:/opt/
scp /opt/mha4mysql-node-0.57.tar.gz root@192.168.10.106:/opt/
scp /opt/mha4mysql-node-0.57.tar.gz root@192.168.10.107:/opt/

驗(yàn)證結(jié)果:

ls -l /usr/local/bin/{save_binary_logs,apply_diff_relay_logs,filter_mysqlbinlog,masterha_check_repl}

安裝成功node

3.2 在 MHA manager 節(jié)點(diǎn)上安裝 manager 組件

cd /opt
tar zxvf mha4mysql-manager-0.57.tar.gz
cd mha4mysql-manager-0.57
perl Makefile.PL
make&&make install

4、MHA核心配置

4.1、編寫MHA配置文件

# manager 節(jié)點(diǎn)上復(fù)制相關(guān)腳本到/usr/local/bin 目錄
cp -rp /opt/mha4mysql-manager-0.57/samples/scripts /usr/local/bin
# 查看四個(gè)文件
ll /usr/local/bin/scripts/
# (2)復(fù)制上述的自動(dòng)切換時(shí) VIP 管理的腳本到 /usr/local/bin 目錄,這里使用
# master_ip_failover腳本來(lái)管理 VIP 和故障切換
cp /usr/local/bin/scripts/master_ip_failover /usr/local/bin
# 修改內(nèi)容如下:(刪除原有內(nèi)容,直接復(fù)制并修改vip相關(guān)參數(shù))
vim /usr/local/bin/master_ip_failover
#################### 寫入
#!/usr/bin/env perl
use strict;
use warnings FATAL => 'all';
use Getopt::Long;
# 核心配置(根據(jù)集群調(diào)整)
my $vip = '192.168.10.200';        # VIP地址
my $brdc = '192.168.10.255';       # 廣播地址
my $ifdev = 'ens33';               # 綁定網(wǎng)卡
my $key = '1';                     # 虛擬網(wǎng)卡序號(hào)
my $ssh_port = '22';               # SSH端口(根據(jù)實(shí)際調(diào)整)
my $exit_code = 0;                 # 默認(rèn)退出碼
# 改用ip命令(CentOS7原生支持,無(wú)需net-tools),并添加ARP廣播
my $ssh_start_vip = "/usr/sbin/ip addr add $vip/24 brd $brdc dev $ifdev label $ifdev:$key; /usr/sbin/arping -q -A -c 1 -I $ifdev $vip; /usr/sbin/iptables -F;";
my $ssh_stop_vip = "/usr/sbin/ip addr del $vip/24 dev $ifdev label $ifdev:$key;";
# 接收命令行參數(shù)
my (
    $command, $ssh_user, $orig_master_host, $orig_master_ip,
    $orig_master_port, $new_master_host, $new_master_ip, $new_master_port
);
GetOptions(
    'command=s'          => \$command,
    'ssh_user=s'         => \$ssh_user,
    'orig_master_host=s' => \$orig_master_host,
    'orig_master_ip=s'   => \$orig_master_ip,
    'orig_master_port=i' => \$orig_master_port,
    'new_master_host=s'  => \$new_master_host,
    'new_master_ip=s'    => \$new_master_ip,
    'new_master_port=i'  => \$new_master_port,
);
exit &main();
# 主邏輯
sub main {
    print "\n\nIN SCRIPT TEST====$ssh_stop_vip==$ssh_start_vip===\n\n";
    if ( $command eq "stop" || $command eq "stopssh" ) {
        $exit_code = 1;
        eval {
            print "Disabling the VIP on old master: $orig_master_host \n";
            &stop_vip();
            $exit_code = 0;
        };
        if ($@) {
            warn "Got Error when stop VIP: $@\n";
            exit $exit_code;
        }
    }
    elsif ( $command eq "start" ) {
        $exit_code = 10;
        eval {
            print "Enabling the VIP - $vip on the new master - $new_master_host \n";
            &start_vip();
            $exit_code = 0;
        };
        if ($@) {
            warn "Got Error when start VIP: $@\n";
            exit $exit_code;
        }
    }
    elsif ( $command eq "status" ) {
        print "Checking the Status of the script.. OK \n";
        $exit_code = 0;
    }
    else {
        &usage();
        $exit_code = 1;
    }
    return $exit_code;
}
# 新主庫(kù)綁定VIP
sub start_vip() {
    my $ssh_cmd = "ssh -p $ssh_port $ssh_user\@$new_master_host '$ssh_start_vip'";
    print "Executing: $ssh_cmd\n";
    my $output = `$ssh_cmd 2>&1`;
    if ($?) { # 檢查命令執(zhí)行返回碼(非0則失?。?
        die "Failed to start VIP on $new_master_host: $output\n";
    }
}
# 舊主庫(kù)解綁VIP
sub stop_vip() {
    my $ssh_cmd = "ssh -p $ssh_port $ssh_user\@$orig_master_host '$ssh_stop_vip'";
    print "Executing: $ssh_cmd\n";
    my $output = `$ssh_cmd 2>&1`;
    if ($?) {
        die "Failed to stop VIP on $orig_master_host: $output\n";
    }
}
# 用法說(shuō)明(修復(fù)字符串換行問(wèn)題)
sub usage {
    print <<"USAGE";
Usage: master_ip_failover --command=start|stop|stopssh|status \\
  --orig_master_host=host --orig_master_ip=ip --orig_master_port=port \\
  --new_master_host=host --new_master_ip=ip --new_master_port=port
USAGE
}
#(4)創(chuàng)建 MHA 軟件目錄并拷貝配置文件,這里使用app1.cnf配置文件來(lái)管理 mysql 節(jié)點(diǎn)服務(wù)器
mkdir /etc/masterha
cp /opt/mha4mysql-manager-0.57/samples/conf/app1.cnf /etc/masterha
vim /etc/masterha/app1.cnf #刪除原有內(nèi)容,直接復(fù)制并修改節(jié)點(diǎn)服務(wù)器
############寫入
[server default]
manager_log=/var/log/masterha/app1/manager.log
manager_workdir=/var/log/masterha/app1
master_binlog_dir=/usr/local/mysql/data
master_ip_failover_script=/usr/local/bin/master_ip_failover
master_ip_online_change_script=/usr/local/bin/master_ip_online_change
password=manager
ping_interval=1
remote_workdir=/tmp
repl_password=123456
repl_user=myslave
secondary_check_script=/usr/local/bin/masterha_secondary_check -s 192.168.10.106 -s 192.168.10.107
shutdown_script=""
ssh_user=root
user=mha
[server1]
hostname=192.168.10.105
port=3306
[server2]
candidate_master=1
check_repl_delay=0
hostname=192.168.10.106
port=3306
[server3]
hostname=192.168.10.107
port=3306

4.2、驗(yàn)證配置有效性

/sbin/ifconfig ens33:1 192.168.10.200/24
manager 節(jié)點(diǎn)上測(cè)試 ssh
masterha_check_ssh -conf=/etc/masterha/app1.cnf

manager 節(jié)點(diǎn)上測(cè)試 mysql 主從連接
masterha_check_repl -conf=/etc/masterha/app1.cnf

在 manager 節(jié)點(diǎn)上啟動(dòng) MHA
nohup masterha_manager --conf=/etc/masterha/app1.cnf --remove_dead_master_conf –
ignore_last_failover < /dev/null > /var/log/masterha/app1/manager.log 2>&1 &
查看 MHA 狀態(tài)
masterha_check_status --conf=/etc/masterha/app1.cnf

查看 MHA 日志
cat /var/log/masterha/app1/manager.log | grep “current master”
都是master 192.168.10.105

5、啟動(dòng)MHA監(jiān)控

在 manager 節(jié)點(diǎn)上監(jiān)控觀察日志記錄
tail -f /var/log/masterha/app1/manager.log

總結(jié)

本文系統(tǒng)講解 MHA 的組件、原理與作用,通過(guò)環(huán)境準(zhǔn)備、依賴配置、軟件安裝及監(jiān)控部署的完整實(shí)戰(zhàn),為 MySQL 高可用架構(gòu)搭建提供可落地的實(shí)施方案。

到此這篇關(guān)于Mysql的MHA實(shí)戰(zhàn)指南的文章就介紹到這了,更多相關(guān)mysql mha組件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL8.0中的窗口函數(shù)的示例代碼

    MySQL8.0中的窗口函數(shù)的示例代碼

    本文主要介紹了MySQL8.0中的窗口函數(shù)的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 將.sql文件導(dǎo)入到MySQL數(shù)據(jù)庫(kù)具體步驟

    將.sql文件導(dǎo)入到MySQL數(shù)據(jù)庫(kù)具體步驟

    MySQL有多種方法導(dǎo)入多個(gè).sql文件,下面這篇文章主要介紹了將.sql文件導(dǎo)入到MySQL數(shù)據(jù)庫(kù)的具體步驟,文中將實(shí)現(xiàn)步驟介紹的非常詳細(xì),需要的朋友可以參考下
    2023-10-10
  • MySQL OOM(內(nèi)存溢出)的解決思路

    MySQL OOM(內(nèi)存溢出)的解決思路

    這篇文章主要介紹了MySQL OOM(內(nèi)存溢出)的解決思路,文中講解非常細(xì)致,幫助大家在學(xué)習(xí)工作中解決內(nèi)存溢出的問(wèn)題,感興趣的朋友可以了解下
    2020-08-08
  • php+mysql prepare 與普通查詢的性能對(duì)比實(shí)例講解

    php+mysql prepare 與普通查詢的性能對(duì)比實(shí)例講解

    prepare可以解決大訪問(wèn)量的網(wǎng)站給數(shù)據(jù)庫(kù)服務(wù)器所帶來(lái)的負(fù)載和開(kāi)銷,本文章通過(guò)實(shí)例向大家介紹預(yù)查詢prepare與普通查詢的性能對(duì)比,需要的朋友可以參考一下
    2016-11-11
  • mysql 8.0.19 winx64.zip安裝教程

    mysql 8.0.19 winx64.zip安裝教程

    這篇文章主要為大家詳細(xì)介紹了mysql 8.0.19 winx64.zip安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • 利用rpm安裝mysql 5.6版本詳解

    利用rpm安裝mysql 5.6版本詳解

    眾所周知MySQL在很多領(lǐng)域都被廣泛的使用,尤其是很多互聯(lián)網(wǎng)企業(yè),諸如騰訊,阿里等等。那么本文將主要介紹如何通過(guò)rpm方式來(lái)安裝Mysql,這是比較簡(jiǎn)單的一種安裝方式,文中介紹的很詳細(xì),相信對(duì)于大家安裝mysql具有一定的參考借鑒價(jià)值,下面來(lái)一起看看吧。
    2016-11-11
  • mysql分區(qū)表學(xué)習(xí)之日期分區(qū)

    mysql分區(qū)表學(xué)習(xí)之日期分區(qū)

    這篇文章主要給大家介紹了關(guān)于mysql分區(qū)表學(xué)習(xí)之日期分區(qū)的相關(guān)資料,分區(qū)是一種表的設(shè)計(jì)模式,通俗地講表分區(qū)是將一大表,根據(jù)條件分割成若干個(gè)小表,需要的朋友可以參考下
    2023-08-08
  • MySQL百萬(wàn)級(jí)數(shù)據(jù)分頁(yè)查詢優(yōu)化方案

    MySQL百萬(wàn)級(jí)數(shù)據(jù)分頁(yè)查詢優(yōu)化方案

    在mysql中l(wèi)imit可以實(shí)現(xiàn)快速分頁(yè),但是如果數(shù)據(jù)到了幾百萬(wàn)時(shí)我們的limit必須優(yōu)化才能有效的合理的實(shí)現(xiàn)分頁(yè)了,否則可能卡死你的服務(wù)器哦。
    2017-11-11
  • mysql數(shù)據(jù)庫(kù)刪除重復(fù)數(shù)據(jù)只保留一條方法實(shí)例

    mysql數(shù)據(jù)庫(kù)刪除重復(fù)數(shù)據(jù)只保留一條方法實(shí)例

    這篇文章主要給大家介紹了關(guān)于mysql數(shù)據(jù)庫(kù)刪除重復(fù)數(shù)據(jù),只保留一條的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • MySQL?8.0.28?安裝配置圖文教程

    MySQL?8.0.28?安裝配置圖文教程

    這篇文章主要為大家詳細(xì)介紹了MySQL?8.0.28?安裝配置圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06

最新評(píng)論

砀山县| 颍上县| 昔阳县| 房产| 阿拉善左旗| 监利县| 明星| 和平区| 定安县| 临夏市| 故城县| 河北省| 棋牌| 沾化县| 武城县| 瑞丽市| 隆子县| 闸北区| 时尚| 库尔勒市| 上高县| 潍坊市| 陈巴尔虎旗| 门头沟区| 镇原县| 射阳县| 天祝| 福泉市| 桃江县| 灵石县| 沾益县| 潼南县| 仙居县| 临潭县| 湖口县| 嵊泗县| 天津市| 宜黄县| 宾川县| 长丰县| 琼海市|