首页 > 数据库 >Oceanbase3.2.4ForOracle_Docker搭建过程

Oceanbase3.2.4ForOracle_Docker搭建过程

时间:2024-02-20 12:00:11浏览次数:15  
标签:1024 Oceanbase3.2 logs admin 4ForOracle assigned max home Docker

Oceanbase3.2.4ForOracle_Docker搭建过程


背景

快速搭建测试环境。
docker的方式较为简单。

并且便于进行相关的测试和维护工作。
还总结了部分参数设置

执行数据库创建

注意事项:
创建目录:
mkdir -p /home/admin/oceanbase/
mkdir -p /home/admin/logs/obproxy
mkdir -p /home/admin/logs/supervisor

注意需要自行导入镜像

Docker的参数信息
--memory 和 -e CONTAINER_MEM 设置成虚拟机内存的一半
-e SYSTEM_MEMORY=8G 建设不要更改。
-e LOCAL_IP=172.24.110.192 采用内网IP地址
-e NIC_NAME=eth1  内网内网IP地址的网卡
-e OBCLUSTER_NAME=obcluster \
-e OBCLUSTER_SYS_PASS=Testxxxxxxxx \
定义集群名字和密码

导入镜像和获取镜像信息
ob_image=`docker images | grep oceanbase | awk '{printf $1":"$2"\n"}'` && echo $ob_image

执行镜像: 
docker run -d -it --name observer \
    --user root \
    --cpu-period 100000 \
    --net=host \
    --memory 48G \
    -e CONTAINER_CPU=8 \
    -e CONTAINER_MEM=48G \
    -e SYSTEM_MEMORY=8G \
    -e DATAFILE_SIZE=200G \
    -e LOCAL_IP=172.24.110.192  \
    -e NIC_NAME=eth1 \
    -e OBCLUSTER_IP_LIST=172.24.110.192 \
    -e IDC_ROOM=idc1 \
    -e REGION=region1 \
    -e OBCLUSTER_ID=100000 \
    -e OBCLUSTER_NAME=obcluster \
    -e OBCLUSTER_SYS_PASS=Testxxxxxxxx \
    -v /data/1:/data/1 \
    -v /data/log1:/data/log1 \
    -v /home/admin/oceanbase:/home/admin/oceanbase \
    -v /home/admin/logs/obproxy:/home/admin/logs/obproxy \
    -v /home/admin/logs/supervisor:/home/admin/logs/supervisor \
    -p 2881:2881 \
    -p 2882:2882 \
    -p 2883:2883 \
    -p 2884:2884 \
    $ob_image

日志查看

docker logs -f observer

判断端口是否监听
netstat -anop |grep 288 |grep ^tcp |grep LISTEN

查看日志信息
tail -f /home/admin/logs/supervisor/start_obproxy.log

需要注意,启动子会后会有一个 fio 进程进行磁盘测试。
    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
 108948 root      20   0 1664436   1.1g   1.1g R   9.7   1.2   0:40.11 fio

会占用较多的时间。 需要等待。 
我这边一个机器耗时大约 15分钟才完成。 

创建租户

docker exec -it observer bash

mysql -h127.0.0.1 -P2883 -uroot@sys#obcluster -A -c -pTestxxxxxxxx
use oceanbase

创建租户 需要先查询资源配置:
SELECT
 svr_ip,
 svr_port,
 zone,
 cpu_total,
 cpu_assigned,
 cpu_max_assigned,
 cpu_total - cpu_max_assigned cpu_free,
 round(mem_total / 1024 / 1024 / 1024, 1) "mem_total(G)",
 round(mem_assigned / 1024 / 1024 / 1024, 1) "mem_assigned(G)",
 round(mem_max_assigned / 1024 / 1024 / 1024, 1) "mem_max_assigned(G)",
 round((mem_total - mem_max_assigned) / 1024 / 1024 / 1024, 1) "mem_free(G)",
 round(disk_total / 1024 / 1024 / 1024, 1) "disk_total(G)",
 round(disk_assigned / 1024 / 1024 / 1024, 1) "disk_assigned(G)",
 disk_assigned_percent,
 unit_num
FROM
 __all_virtual_server_stat
ORDER BY
 zone\G

注意主要是看 free的值 进行代替
 然后创建命令为:
 CREATE RESOURCE UNIT IF NOT EXISTS unit2
 max_cpu 4,
 min_cpu 4,
 max_memory '20G',
 min_memory '20G',
 max_session_num 65535,
 max_iops 1250,
 min_iops 1250,
 max_disk_size '150G';

 创建资源池
CREATE RESOURCE POOL IF NOT EXISTS pool2
 unit = 'unit2',
 unit_num = 1,
 zone_list =('zone_1');

 创建租户
 CREATE TENANT IF NOT EXISTS oraclet
 charset = 'utf8mb4',
 zone_list =('zone_1'),
 primary_zone = 'zone_1',
 resource_pool_list =('pool2')
 SET
 ob_tcp_invited_nodes = '%',
 ob_compatibility_mode = 'oracle';

Oracle资源池处理

docker exec -it observer bash
obclient -h127.0.0.1 -P2883 -usys@oraclet#obcluster -A -c
ALTER USER sys IDENTIFIED BY "Testxxxxxxxx";

修改密码后的链接方式为:
obclient -h127.0.0.1 -P2883 -usys@oraclet#obcluster -A -c -pTestxxxxxxxx

部分参数信息

Alter system  set nls_date_format = 'YYYY-MM-DD HH24:MI:SS';
ALTER SYSTEM SET open_cursors=3000; 
SET GLOBAL NLS_LENGTH_SEMANTICS = 'CHAR';
SET global ob_trx_timeout=86400000000;
SET global ob_trx_idle_timeout=2400000000;
set global ob_query_timeout=3600000000;

应用创建数据库

IP:172.24.110.192
租户:sys@oraclet#obcluster
创建的数据库账户名: myerpob3oracle@oraclet#obcluster
密码: Test_xxxx
系统管理员: Testxxxx?!
创建年度: 2024年

清理方式

删除数据库的方式:
drop user ob3oracle cascade ;
drop user ob4oracle cascade ;

time docker rm -f observer
# 注意根据配置, 这一块的清理时间长度不一。

rm -rf /home/admin/oceanbase/* /home/admin/logs/obproxy/* /home/admin/logs/supervisor/*
rm -rf /data/1/* /data/log1/*
# 清理文件。

标签:1024,Oceanbase3.2,logs,admin,4ForOracle,assigned,max,home,Docker
From: https://www.cnblogs.com/jinanxiaolaohu/p/18022811

相关文章

  • 数据库审计-archery-v1.10.0-docker部署安装
    安装docker1.安装依赖包yuminstall-yyum-utilsdevice-mapper-persistent-datalvm22.添加阿里镜像仓库yum-config-manager--add-repohttp://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo3.安装dockeryum-yinstalldocker-ce安装dockercomposecurl......
  • Docker Compose - 向远程主机部署服务
    问题描述通常,我们本地编写docker-compose.yml文件,然后运行测试。但是,我们需要在arm64环境中进行测试,无法在本地直接运行测试。我们希望可以在本地编写,然后本地使用docker-composeup直接在远程arm主机上运行测试。该笔记将介绍:在本地运行docker-compose命令,但是在远......
  • Docker-Compose简单入门使用
    Dockercompose使用DockerCompose官方文档:https://docs.docker.com/compose/一、DockerCompose安装如果安装使用DockerDesktop默认就安装了DockerCompose,dockerCompose安装参考:https://www.cnblogs.com/morang/p/devops-docker24-composev2-install.htmlhttps://blog......
  • Docker 使用遇到的问题解决 更改Tag
    dockertagconsul:1.15.4consul:latestdockerrmiconsul:1.15.4删除制定版本在运行时,有些镜像拉取时报错我这里 时 consu,只能制定版本下载1.15.4Errorresponsefromdaemon:manifestforconsul:latestnotfound:manifestunknown:manifestunknown ......
  • docker 清理无用的磁盘和镜像
    要增加Docker镜像的磁盘空间,实际上是要增加Docker存储驱动所在的磁盘空间或分区大小。以下是几种常见的方法:清理Docker系统:使用dockersystemprune命令清理无用的容器、镜像、卷和网络。使用dockerimageprune清理所有未被容器引用的镜像。迁移Docker存储目录:停止Docker......
  • docker login 私有仓库harbor 502 Bad Gateway的报错
    具体报错:Logindidnotsucceed,error:Errorresponsefromdaemon:loginattempttohttp://harbor.com/v2/failedwithstatus:502BadGateway其实harbor在网页端是可以登录的,但是dockerlogin-uadmin-p1harbor.oldboyedu.com的时候依旧是提示报错的一般这种报错......
  • Docker 安装 SqlServer 和连接
    dockerpullmcr.microsoft.com/mssql/server:2019-latest--拉取dockerrun-e"ACCEPT_EULA=Y"-e"MSSQL_SA_PASSWORD=MyName2024"-p14330:1433--namesql1--hostnamesql1-dmcr.microsoft.com/mssql/server:2019-latest--运行-d是你......
  • Docker安装Tomcat容器
    Docker安装Tomcat容器查看原文安装Tomcat#查找官方镜像dockersearchtomcat#下载最新版Tomcat镜像(其实此命令就等同于:dockerpulltomcat:latest)dockerpulltomcat#下载指定版本的Nginx镜像(xxx指具体版本号)dockerpulltomcat:xxx#检查当前所有Docker下载......
  • Docker安装Redis容器
    Docker安装Redis容器查看原文安装Redis#下载redis镜像dockerpullredis:5#检查当前所有Docker下载的镜像dockerimagesredis配置文件创建以下文件及文件夹,方便配置及管理redismkdir-p/docker/redismkdir-p/docker/redis/datatouch/docker/redis/redis.conf......
  • Docker安装MySQL容器
    Docker安装MySQL容器查看原文安装MySQL#查找官方镜像dockersearchmysql#下载mysql镜像sudodockerpullmysql:5.7#检查当前所有Docker下载的镜像dockerimages启动MySQL容器dockerrun-p3306:3306--namemysql\-v/usr/local/docker/mysql/conf:/etc/mysq......