手动部署 OceanBase 集群

1、下载最新的OB安装包

手动安装OceanBase软件包

rpm -ivh oceanbase-ce-libs-4.2.2.0-100010012024022719.el7.x86_64.rpm

rpm -ivh oceanbase-ce-4.2.2.0-100010012024022719.el7.x86_64.rpm

2、初始化数据目录

mkdir /data

mkdir /redo

chown admin:admin /data

chown admin:admin /redo

su - admin

mkdir -p ~/oceanbase/store/obdemo  /data/obdemo/{sstable,etc3} /redo/obdemo/{clog,ilog,slog,etc2}

for f in {clog,ilog,slog,etc2}; do ln -s /redo/obdemo/$f ~/oceanbase/store/obdemo/$f ; done

for f in {sstable,etc3}; do ln -s /data/obdemo/$f ~/oceanbase/store/obdemo/$f; done

3、启动observer进程

su - admin

echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/oceanbase/lib' >> ~/.bash_profile

. ~/.bash_profile

cd ~/oceanbase && bin/observer -i ens160 -p 2881 -P 2882 -z zone1 -d ~/oceanbase/store/obdemo -r '10.102.23.43:2882:2881' -c 20210912 -n obdemo -o "memory_limit=8G,cache_wash_threshold=1G,__min_full_resource_pool_memory=268435456,system_memory=3G,memory_chunk_cache_size=128M,cpu_count=6,net_thread_count=4,datafile_size=50G,stack_size=1536K,config_additional_dir=/data/obdemo/etc3;/redo/obdemo/etc2" -d ~/oceanbase/store/obdemo

第1次启动时报错

[2024-03-08 15:44:02.765650] EDIAG [SHARE] operator() (ob_common_config.cpp:366) [947][observer][T0][Y0-0000000000000000-0-0] [lt=4][errcode=-4147] Invalid config, value out of [1073741824,) (for reference only). name=__min_full_resource_pool_memory, value=268435456, ret=-4147 BACKTRACE:0x12a0688c 0x53dbba5 0x554e695 0x554e328 0x554df8c 0xffcd147 0xff8d207 0xff8c9b8 0xa85f5d1 0xa8552e9 0x73fe460 0x7fc3d4311555 0x56c374f

调整参数__min_full_resource_pool_memory=1073741824

第2次启动还有报错

[2024-03-08 15:55:21.747412] ERROR resize_ (ob_server_log_block_mgr.cpp:211) [4617][observer][T0][Y0-0000000000000000-0-0] [lt=16][errcode=-4290] cannot allocate disk space(possible reason="may be diskspace is not enough, please check the configuration about log disk", new log disk size(MB)=29340)

调整datafile_size=20G

cd ~/oceanbase && bin/observer -i ens160 -p 2881 -P 2882 -z zone1 -d ~/oceanbase/store/obdemo -r '10.102.23.43:2882:2881' -c 20210912 -n obdemo -o "memory_limit=8G,cache_wash_threshold=1G,__min_full_resource_pool_memory=1073741824,system_memory=3G,memory_chunk_cache_size=128M,cpu_count=6,net_thread_count=4,datafile_size=20G,stack_size=1536K,config_additional_dir=/data/obdemo/etc3;/redo/obdemo/etc2" -d ~/oceanbase/store/obdemo

启动成功,查看observer进程

[admin@obtest log]$ ps -ef|grep observer

admin     7114     1 11 16:02 ?        00:00:49 bin/observer -i ens160 -p 2881 -P 2882 -z zone1 -d /home/admin/oceanbase/store/obdemo -r 10.102.23.43:2882:2881 -c 20210912 -n obdemo -o memory_limit=10G,cache_wash_threshold=1G,__min_full_resource_pool_memory=1073741824,system_memory=3G,memory_chunk_cache_size=128M,cpu_count=6,net_thread_count=4,datafile_size=20G,stack_size=1536K,config_additional_dir=/data/obdemo/etc3;/redo/obdemo/etc2 -d /home/admin/oceanbase/store/obdemo

[admin@obtest log]$ netstat -ntlp|grep ob

(Not all processes could be identified, non-owned process info

 will not be shown, you would have to be root to see it all.)

tcp        0      0 0.0.0.0:2881            0.0.0.0:*               LISTEN      7114/bin/observer  

tcp        0      0 0.0.0.0:2882            0.0.0.0:*               LISTEN      7114/bin/observer 

集群初始化

mysql -h 10.102.23.43 -u root -P 2881 -p -c -A

set session ob_query_timeout=1000000000;

alter system bootstrap ZONE 'zone1' SERVER '10.102.23.43:2882';

初始化成功

设置root@sys的密码

alter user root identified by '2QAZwsx' ;

创建proxyro用户

grant select on oceanbase.* to proxyro identified by '2QAZwsx' ;

安装 OBPROXY

rpm -ivh obproxy-ce-4.2.1.0-11.el7.x86_64.rpm

启动obproxy进程

cd ~/obproxy-4.2.1.0/ && bin/obproxy -r "10.102.23.43:2881" -p 2883 -o "enable_strict_kernel_release=false,enable_cluster_checkout=false,enable_metadb_used=false" -c obdemo

obproxy端口监听正常

[admin@obtest obproxy-4.2.1.0]$ netstat -ntlp |grep obproxy

(Not all processes could be identified, non-owned process info

 will not be shown, you would have to be root to see it all.)

tcp        0      0 0.0.0.0:2883            0.0.0.0:*               LISTEN      22436/bin/obproxy  

tcp        0      0 0.0.0.0:2884            0.0.0.0:*               LISTEN      22436/bin/obproxy

obclient -h 127.0.0.1 -u root@proxysys -P 2883 -p

alter proxyconfig set obproxy_sys_password = '2QAZwsx' ;

修改 OBPROXY 连接 OceanBase 集群用户 proxyro 的密码

alter proxyconfig set observer_sys_password = '2QAZwsx' ;

通过obproxy连接sys租户成功

obclient -h10.102.23.43 -uroot@sys#obdemo -P2883 -p -c -A oceanbase

4、通过obproxy连接ob,创建业务租户、数据库和表

创建资源单元

CREATE RESOURCE UNIT U1C2G MAX_CPU 1, MEMORY_SIZE '2G', MAX_IOPS 1280,LOG_DISK_SIZE '10G', MIN_IOPS=1024;

CREATE resource pool my_pool unit = 'U1C2G', unit_num = 1;

创建业务租户

create tenant obmysql resource_pool_list=('my_pool'), primary_zone='RANDOM',comment 'mysql tenant/instance', charset='utf8mb4' set ob_tcp_invited_nodes='%', ob_compatibility_mode='mysql';

登录obmysql租户,默认密码为空

obclient -h 127.1 -uroot@obmysql -P2883 -p -c

修改租户的root密码,下次登录后需要输入密码

ALTER USER root IDENTIFIED BY 'Hello123';

创建业务数据库和表

obclient [(none)]> create database testdb1;

Query OK, 1 row affected (0.035 sec)

obclient [(none)]> use testdb1;

Database changed

obclient [testdb1]> create table t1(id int,content varchar(10));

Query OK, 0 rows affected (0.076 sec)

obclient [testdb1]> insert into t1 values(1,'test');

Query OK, 1 row affected (0.020 sec)

obclient [testdb1]> select * from t1;

+------+---------+

| id   | content |

+------+---------+

|    1 | test    |

+------+---------+

1 row in set (0.003 sec)

  • 20
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值