分享知识,分享快乐

0%

oms升级

备份数据库

sudo docker stop ${CONTAINER_NAME}

1
sudo docker stop oms_4.2.8
  1. 登录配置文件中的 CM 心跳库,删除数据库中部分无用记录,节省备份时间。

    1
    2
    3
    4
    5
    6
    # 登录配置文件中的 CM 心跳库
    mysql -h172.20.85.200 -P3306 -uscm -p -D_cm_hb

    # 删除无用的记录
    # heatbeat_sequence 用于汇报心跳,获取自增 ID
    delete from heatbeat_sequence where id < (select max(id) from heatbeat_sequence);
  2. 执行下述命令,手工备份 rm、cm 和 cm_hb 库为 SQL 文件,并确认各文件的大小不为 0。

    多地域场景下,各地域的 cm_hb 库均需要备份。例如有两个地域,则需要备份 4 个库:rm、cm、cm_hb1 和 cm_hb2。

    1
    2
    3
    4
    mysqldump -h172.20.85.200 -P3306 -uscm -p --triggers=false _cm_hb > /home/admin/_cm_hb.sql
    mysqldump -h172.20.85.200 -P3306 -uscm -p --triggers=false _cm > /home/admin/_cm.sql
    mysqldump -h172.20.85.200 -P3306 -uscm -p --triggers=false _cm_hb_pbx > /home/admin/_cm_hb_pbx.sql
    mysqldump -h172.20.85.200 -P3306 -uscm -p --triggers=false _rm > /home/admin/_rm.sql

加载下载的 OMS 社区版安装包至 Docker 容器的本地镜像仓库

1
docker load -i oms_4.2.9-ce.tar.gz

启动 OMS 社区版 V4.2.9-CE 新容器

1
2
3
4
5
6
7
8
9
10
11
12
docker run -dit --net host \
-v /opt/oms/config.yaml:/home/admin/conf/config.yaml \
-v /opt/oms/oms_logs:/home/admin/logs \
-v /opt/oms/oms_store:/home/ds/store \
-v /opt/oms/oms_run:/home/ds/run \
-e OMS_HOST_IP=192.168.192.10 \
-e IS_UPGRADE=true \
--privileged=true \
--pids-limit -1 \
--ulimit nproc=65535:65535 \
--name oms_4.2.9 \
068e4f2ed46e

当同一地域下多个节点的配置文件(主要是 cm_nodes)相同时,一个地域只需要执行一次 docker_init.sh

阅读全文 »

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm


# 停止服务并卸载
sudo systemctl stop mysqld
sudo yum remove mysql-community-server mysql-community-client
sudo rm -rf /var/lib/mysql /etc/my.cnf /var/log/mysqld.log

# 清理残留依赖
sudo yum autoremove

# 重新安装
sudo yum install mysql-community-server mysql-community-client
sudo systemctl start mysqld

# 获取临时 root 密码
sudo grep 'temporary password' /var/log/mysqld.log

mysql -h localhost -u root -p
mysql>alter user root@localhost identified by '****';
mysql>uninstall plugin validate_password;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
wget  https://ftpmirror.your.org/pub/percona/percona/yum/release/7/os/x86_64/percona-xtrabackup-24-2.4.29-1.el7.x86_64.rpm
yum install percona-xtrabackup-24-2.4.29-1.el7.x86_64.rpm

wget https://docs-tencentdb-1256569818.cos.ap-guangzhou.myqcloud.com/qpress-11-linux-x64.tar
tar xvf qpress-11-linux-x64.tar
mv qpress /usr/bin


登陆 10.0.18.90

sudo su -

scp -P2222 /sour_backup/backupSet/mysql/10.0.20.202/2025-03-05_03-00-02/2025-03-05_03-00-02/stream_backup_2025-03-05_03-00-02 10.0.25.14:/data/mysql/recovery

xbstream --verbose --parallel=4 --extract < /data/mysql/recovery/stream_backup_2025-03-05_03-00-02 --directory /data/mysql/recovery/ > /data/recovery/destream.log

# xtrabackup --parallel=4 --decompress --remove-original --target-dir=/data/mysql/recovery/ > /data/recovery/decompress.log
xtrabackup --decompress --parallel=4 --decrypt=AES256 --encrypt-key="lk92tBpEfn0nn88mBDt0%y8fPO0y%wuX" --target-dir=/data/mysql/recovery/ --remove-original > /data/recovery/decompress.log


xtrabackup --use-memory=1024MB --prepare --target-dir=/data/mysql/recovery/ > /data/recovery/prepare_redo_only.log


rm -rf /data/mysql/mysqldata/*

mkdir -p /data/mysql/mysqldata/{binlog,innodb_log,innodb_ts,innodb_undo,log,mydata,tmpdir,sock,relaylog}

# xtrabackup --defaults-file=/etc/my.cnf --move-back --target-dir=/data/mysql/recovery/
xtrabackup --defaults-file=/etc/my.cnf --copy-back --target-dir=/data/mysql/recovery/

touch /data/mysql/mysqldata/log/error.log
chown -R mysql.mysql /data
chmod -R 775 /data

systemctl start mysql
阅读全文 »

官方文档:https://www.oceanbase.com/docs/common-obdiag-cn-1000000001491140

obdiag安装

1
2
3
4
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo
sudo yum install -y oceanbase-diagnostic-tool
sh /usr/local/oceanbase-diagnostic-tool/init.sh

用户侧配置文件

用户侧配置文件可通过 obdiag config <option> 命令快速生成或者直接编辑配置文件,文件的默认路径是 ~/.obdiag/config.yml,其样板文件位于 ~/.obdiag/example

obdiag config -h <db_host> -u <sys_user> [-p password] [-P port]

1
obdiag config -h192.168.81.31 -uroot@sys -p'***' -P2881

check 命令组

总览

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 列出所有巡检套餐
obdiag check list

# 全量巡检 (最常用)
obdiag check run

# 列存POC检查
obdiag check --cases=column_storage_poc

# obproxy 版本检查
obdiag check --obproxy_cases=proxy

# 部署环境检查
obdiag check --cases=build_before

# 执行 sysbench 时的巡检任务集合
obdiag check --cases=sysbench_run

# 执行 sysbench 前的巡检任务集合
obdiag check --cases=sysbench_free
阅读全文 »

部署 OceanBase 集群环境

磁盘初始化

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
umount /dfs/data{1..8}

pvcreate /dev/nvme{0..7}n1 -y

vgcreate /dev/obvg /dev/nvme0n1 /dev/nvme1n1 /dev/nvme2n1 /dev/nvme3n1 /dev/nvme4n1 /dev/nvme5n1 /dev/nvme6n1 /dev/nvme7n1

# 日志盘 ,内存的三倍
lvcreate -n ob-log -L 3096G obvg --stripes=6 --stripesize=128
lvcreate -n ob-data -l 100%Free obvg --stripes=6 --stripesize=1024

mkfs.ext4 /dev/obvg/ob-log -O 64bit
mkfs.xfs /dev/obvg/ob-data

mkdir -p /data/{1,log1} && chmod -R 755 /data
vi /etc/fstab
/*写入*/
/dev/obvg/ob-data /data/1 xfs defaults,noatime,nodiratime 0 0
/dev/obvg/ob-log /data/log1 ext4 defaults,noatime,nodiratime,nodelalloc,barrier=0 0 0
mount -a

问题: OBD-4300:x.x.x.x: failed to query java version, you may not have java installed

解决方法:

1
ln -s /usr/java/jdk1.8.0_181-cloudera/bin/java  /usr/bin/java

在线部署

当您选择在线部署时,可以参考本节命令在中控机上安装 OBD。

1
2
3
4
[admin@test001 ~]$ sudo yum install -y yum-utils
[admin@test001 ~]$ sudo yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo
[admin@test001 ~]$ sudo yum install -y ob-deploy
[admin@test001 ~]$ source /etc/profile.d/obd.sh

步骤二:使用白屏部署 OceanBase 数据库

阅读全文 »

trino连接Starrocks

#不设置这个参数,trino 任何表都不看到。如果设置这个参数,全部表就都出来了

set global enable_groupby_use_output_alias=true;

starrocks.propertes

1
2
3
4
5
connector.name=mysql 
connection-url=jdbc:mysql://172.20.15.101:9030
connection-user=tx_hadoop_rw
connection-password=****
case-insensitive-name-matching=true

在starrocks客户端执行以下命令

1
set global enable_groupby_use_output_alias=true;
阅读全文 »

oms使用

官网文档: https://www.oceanbase.com/docs/community-oms-cn-1000000001456771

开启时序数据库时,8088端口冲突了,需要改一下。

注意:跨机房网络commit问题

1
2
3
4
5
6
7
8
9
10
11
12
wget  https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/download-center/opensource/oms/4.2.6_CE/oms_4.2.6-ce.tar.gz

docker load -i oms_4.2.6-ce.tar.gz

docker images

sudo docker run -d --net host --name oms-config-tool 04b873b7c52f bash && sudo docker cp oms-config-tool:/root/docker_remote_deploy.sh . && sudo docker rm -f oms-config-tool


bash docker_remote_deploy.sh -o <OMS 容器挂载目录> -i <本机 IP 地址> -d <OMS_IMAGE>

bash docker_remote_deploy.sh -o /opt/oms -i 192.168.81.79 -d 04b873b7c52f

mysql的 log_slave_updates 开启, 同步前查看binlog是否有延迟

mysql2store.useGtid=false

image-20241122113639437

jvm修改 -Xms20480m -Xmx20480m -Xmn10240m

image-20241122113753543

阅读全文 »

cloudcanl 2.2.4 安装部署

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
sudo yum update
sudo yum -y install epel-release
# base util

sudo yum install -y yum-utils
sudo yum install -y lsof
sudo yum install -y bc
sudo yum install -y p7zip p7zip-plugins

# install docker

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

#修改存储路径
vim /etc/docker/daemon.json

sudo systemctl start docker
systemctl enable docker
sudo wget "https://pc.clougence.com/docker-compose-1.28.3" -O /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

# check

docker -v
docker-compose version

系统准备

clougence用户ulimit上限调整为102400

1
2
vi  /etc/security/limits.d/20-nproc.conf
## 调节clougence用户的资源限制
1
2
3
# 解压*
7z x cloudcanal-2.2.4.7z -o./cloudcanal_home
cd cloudcanal_home

5. 启动CloudCanal

  • 执行启动命令: sh startup.sh
  • 当终端出现 cloudcanal start 时,即启动成功
    7b00e562-cd45-4905-a626-1356503d8213-image.png

6. 确认启动成功

  • 启动过程将耗时 1 分钟左右,访问控制台 http://{您部署机器的ip}:8111 正确登录并开始操作
阅读全文 »

hive数据库限制容量

操作前
检查是否需要扩容配额
sudo su - hdfs
hdfs dfs -count -q -h /user/hive/warehouse/yz.db
操作过程
实施
sudo -u hdfs hdfs dfsadmin -setSpaceQuota 40G /user/hive/warehouse/yz.db
操作后
验证
hdfs dfs -count -q -h /user/hive/warehouse/yz.db

阅读全文 »

obd 接管集群

用obd cluster takeover 接管集群

这个接管需要目标集群obshell服务(ocs)是否没开启

ps -ef|grep obshell

开启方式 端口默认是2886
./bin/obshell agent start --ip $ip --port $port

1
2
3
4
5
6
7
su - obuser

export OB_ROOT_PASSWORD="pwd"

/home/obuser/baofu/oceanbase/bin/obshell agent start --ip 10.0.22.172 -P 2886

obd cluster takeover baofu -h10.0.22.170 -P2881 -p***** --ssh-user=obuser --ssh-password=obuser
阅读全文 »