oceanbase(ob)基于备份集搭建备租户方式

一、搭建备租户方式(基于备份的方式)

注意事项:要有一个源端OB集群和目标端OB集群。

1、新建主租户(如果原来有主租户可是省略)

复制代码
#创建unit
create resource unit ut_2c2g max_cpu=2, memory_size='2G', max_iops=10000,log_disk_size='20G';

#创建资源池
create resource pool pl_2c2g unit=ut_2c2g, unit_num=1;

#创建mysql租户
CREATE TENANT IF NOT EXISTS test_tenant PRIMARY_ZONE='zone1', RESOURCE_POOL_LIST=('pl_2c2g'), CHARSET='utf8mb4' SET ob_tcp_invited_nodes TO '%';

2、开启主租户日志归档

复制代码
#租户调整指定租户的日志归档并发度
ALTER SYSTEM SET log_archive_concurrency = 10 TENANT = test_tenant;

#设置归档目录
ALTER SYSTEM SET LOG_ARCHIVE_DEST='LOCATION=file:///data1/nfs/log' TENANT = test_tenant;

#开启归档
ALTER SYSTEM ARCHIVELOG TENANT = test_tenant;

#查看归档状态
SELECT DEST_ID, ROUND_ID, DEST_NO, STATUS, CHECKPOINT_SCN, CHECKPOINT_SCN_DISPLAY, PATH FROM oceanbase.CDB_OB_ARCHIVELOG;

3、开启物理备份

复制代码
#设置备份目录
ALTER SYSTEM SET DATA_BACKUP_DEST= 'file:///data1/nfs/data' TENANT = test_tenant;

#设置权重
ALTER SYSTEM SET ha_low_thread_score = 4 TENANT = 'test_tenant';

#物理备份
ALTER SYSTEM BACKUP TENANT = test_tenant PLUS ARCHIVELOG;

#查看备份进度
SELECT * FROM oceanbase.CDB_OB_BACKUP_JOBS\G
 
#查看备份集
SELECT * FROM oceanbase.DBA_OB_BACKUP_JOB_HISTORY;

2、创建数据库用户

MySQL

复制代码
-- obclient -h127.0.0.1 -P2881 -uroot@test_tenant -c -A oceanbase
  
CREATE USER repl IDENTIFIED BY '123456';
GRANT SELECT ON oceanbase.* TO repl;

Oracle

复制代码
-- obclient -h127.0.0.1 -P2881 -usys@oraclet2 -c -A
  
CREATE USER css IDENTIFIED BY 123456;
-- V4.2.2 直接授予角色
GRANT STANDBY_REPLICATION TO css;
  
-- V4.2.1 的需要手动授予以下权限
GRANT CONNECT TO rep_user;
GRANT SELECT on SYS.GV$OB_LOG_STAT to rep_user;
GRANT SELECT on SYS.GV$OB_UNITS to rep_user;
GRANT SELECT on SYS.GV$OB_PARAMETERS to rep_user;
GRANT SELECT on SYS.DBA_OB_ACCESS_POINT to rep_user;
GRANT SELECT on SYS.DBA_OB_TENANTS to rep_user;
GRANT SELECT on SYS.DBA_OB_LS to rep_user;

获取访问主库信息

该步骤为下一步创建空备租户提前准备连接信息

sys租户获取所有租户的连接信息

复制代码
SELECT * FROM oceanbase.CDB_OB_ACCESS_POINT;
+-----------+-------------+--------------+----------+
| TENANT_ID | TENANT_NAME | SVR_IP       | SQL_PORT |
+-----------+-------------+--------------+----------+
|         1 | sys         | 10.10.30.160 |     2881 |
|      1001 | META$1002   | 10.10.30.160 |     2881 |
|      1002 | mysqlt1     | 10.10.30.160 |     2881 |
|      1003 | META$1004   | 10.10.30.160 |     2881 |
|      1004 | oraclet2    | 10.10.30.160 |     2881 |
+-----------+-------------+--------------+----------+

MySQL

复制代码
SELECT * FROM oceanbase.DBA_OB_ACCESS_POINT;

Oracle

复制代码
SELECT * FROM SYS.DBA_OB_ACCESS_POINT;

创建备租户

复制代码
#创建unit
create resource unit ut_2c2g max_cpu=2, memory_size='2G', max_iops=10000,log_disk_size='20G';

#创建资源池
create resource pool pl_2c2g unit=ut_2c2g, unit_num=1;

#恢复方式
ALTER SYSTEM RESTORE test_tenant FROM 'file:///data1/nfs/data,log' WITH  'pool_list=pl_2c2g&concurrency=50';

持续复制

复制代码
ALTER SYSTEM RECOVER STANDBY TENANT = test_tenant UNTIL UNLIMITED;
相关推荐
胖头鱼的鱼缸(尹海文)3 天前
数据库管理-第313期 分布式挑战单机,OceanBase单机版试玩(20250411)
数据库·分布式·oceanbase
GottdesKrieges5 天前
OceanBase企业版单机部署:obd命令行方式
数据库·oceanbase
好记忆不如烂笔头abc5 天前
oceanbase开启内存大页
linux·服务器·oceanbase
OceanBase数据库官方博客6 天前
OceanBase 推出单机版 ,为中小规模业务提供高性价比方案
oceanbase·单机数据库
OceanBase数据库官方博客7 天前
OceanBase V4.3.5 上线全文索引功能,让数据检索更高效
全文检索·oceanbase·分布式数据库·产品特性
OceanBase数据库官方博客7 天前
多点:分布式升级助力新零售转型,成本节省超80% | OceanBase 案例
oceanbase·零售·架构选型·布道师计划·电商与零售
OceanBase数据库官方博客8 天前
火山模型的优缺点与优化实践 | OceanBase SQL优化
sql·oceanbase·分布式数据库
ActionTech22 天前
ChatDBA VS DeepSeek:快速诊断 OceanBase 集群新租户数据同步异常
oceanbase·deepseek·chatdba·爱可生
码农老起22 天前
从Oracle到OceanBase数据库迁移:全方位技术解析
数据库·oracle·oceanbase
OceanBase数据库官方博客23 天前
数据文件误删除,OceanBase中如何重建受影响的节点
oceanbase·分布式数据库·运维管理·实践经验