OceanBase-ce cluster
在某些情况下,没有root用户密码,或者说老机器复用。
可以部署在机器上的docker里
0. 机器准备
本人测试时准备了三台机器,安装docker-ce
yum -y install docker-ce
注意事项:
- root 用户密码 :admin
- admin用户密码: admin
1. 从dockerhub pull下来
zibuyu886是本人dockerhub的账户,是在原有centos7
docker 镜像中部署的oceanbase-ce。参考另一篇文章: 部署OceanBase-ce
当然也可以使用官方提供的镜像
docker pull zibuyu886/oceanbase-ce-cluster
2. run 起来
docker run -dit --net=host --privileged=true --name obce01 docker.io/zibuyu886/oceanbase-ce-cluster:latest /usr/sbin/init
/usr/sbin/init 启动容器之后可以使用systemctl方法
-privileged=true 获取宿主机root权限(特殊权限-)
su命令和su -命令最大的本质区别就是:
前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;
而后者连用户和Shell环境一起切换成root身份了。
如果不添加 --privileged=true
可能会因为权限问题无法启动sshd服务。
在三台机器上都要run起来。
3. 修改配置文件
进入docker
docker exec -it obce01 bash
配置文件在/etc/oceanbase-ce-cluster.yaml
中,可以查看和修改配置。
注意修改ip地址和对应的几个密码,还有data目录要创建出来
mkdir -p /data/data mkdir -p /data/redo
4. 开始deploy
- -c 指定配置文件
- -v 显示部署步骤的详细信息
obd cluster deploy obcluster -c /etc/oceanbase-ce-cluser.yaml -v
5. start ob service
obd cluster start obcluster
6. 使用obclient连接数据库
obclient -h127.0.0.1 -P 2883 -uroot@sys#obcluster -p'your passwor' -Doceanbase -A
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。