docker部署方式
Docker启动命令:
docker run -p 2881:2881 --name obstandalone -e MINI_MODE=1 -d oceanbase/oceanbase-ce
外部连接命令可以是:
使用OBClient连接
obclient -h localhost(ip地址) -P 2881 -uroot@sys oceanbase -A -c
如果设置了密码,还需加上-p选项
obclient -h localhost(ip地址) -P 2881 -uroot@sys -p password -A -c
-p密码应该是空的。
设置密码: ALTER USER root IDENTIFIED BY ‘****’;
现在社区版的部署 obd 或 ocp-express 部署已经很方便了,不怎么需要 docker 这种部署方式。
不过既然用了 docker 部署,下面的建议供参考:
- 不要用 root 这种方式去连接 OB,虽然不报错,默认都连接到 sys 租户了。
- 不要在 sys 租户里 创建数据库和表。
- 创建一个业务租户(兼容mysql)。连接这个 mysql,后面就当 mysql实例用(建库、建表)。
- 这个例子 供参考,虽然不是同一个docker 镜像,版本也有点老。建租户和数据库方法是一样的。 5 分钟玩转 OceanBase 社区版 Docker 部署
docker run -p 2882:2881
–name oceanbase-ce-3.1.4
-m 10G
-e MINI_MODE=0 -d
–restart=always
-v /opt/edgs/docker/oceanbase-ce-3.1.4/data/ob:/root/ob
-v /opt/edgs/docker/oceanbase-ce-3.1.4/data/obd:/root/.obd
oceanbase/oceanbase-ce:3.1.4
这是我的启动命令。。分配的最大资源是10G
OB 默认监听 2881 和 2882 端口。
如果docker 启动的时候是 host 模式,外部访问 2881 端口(用户名用 root@sys) 也是可以访问的。如果docker 是 bridge 模式,宿主机跟 容器是可以通,其他服务器就要想的别的办法。直接将端口映射出去更好(2881:2881)。
我这是在分配资源的时候报错了