docker安装opengauss数据库

打印 上一主题 下一主题

主题 758|帖子 758|积分 2274

近来有个项目必要用到openGauss数据库,之前一直没使用过,发现只能在CentOS部署,然而我的云服务器装的是Debian,不过有万能的Docker在,一切都不是标题
  云服务器/虚拟机

   首先必要有一台云服务器,大概使用虚拟机,但虚拟机的话只能本地使用,不太适合多地操作,还是发起用云服务器。
  本文章就是基于雨云-新一代云服务提供商操作的,挑选一台NAT网络的服务器即可,自制好用,而且支持试用
  

  • 进入雨云官网,登陆注册,点击云产品➡️立即购买

  • 选择江苏宿迁➡️NAT模式

  • 可以先试用,试用后可直接续费
安装Docker

   切换到root用户按序次实行命令即可
  提示:操作过程中可能出现以下选项,默认会选择第二个,请手动选择第一个并回车

  1. # 更新
  2. apt-get update
  3. # 升级
  4. apt-get upgrade
  5. # 安装必要工具
  6. sudo apt-get install \
  7.         apt-transport-https \
  8.         software-properties-common \
  9.     ca-certificates \
  10.     curl \
  11.     gnupg \
  12.     lsb-release
  13.    
  14. # 安装GPG证书
  15. curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | apt-key add -
  16. # 安装GPG证书
  17. add-apt-repository "deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian $(lsb_release -cs) stable"
  18. # 更新并安装Docker
  19. apt-get update
  20. apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
  21. # 开机自启
  22. systemctl enable docker
  23. # 启动Docker
  24. systemctl start docker
  25. # 测试——查看docker版本
  26. docker version
  27. # 输出以下内容
复制代码

配置加快镜像源

  1. vim /etc/docker/daemon.json
复制代码
文件内填入以下内容:
  1. {
  2.   "registry-mirrors": ["https://docker.nastool.de"]
  3. }
复制代码
重载配置
  1. systemctl daemon-reload
复制代码
重启docker
  1. systemctl restart docker
复制代码
安装OpenGauss

   这里实验了很多次,网上的镜像源加快地址基本都拉取不下来opengauss的镜像,enmotech/opengauss、blueapple/opengauss、travelliu/opengauss和aff123/opengauss都无法乐成拉取。末了终于找到了https://docker.aityp.com/,里面有5.0.2版本的镜像
  

  • 拉取镜像
    1. docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/enmotech/opengauss:5.0.2
    复制代码
  • 创建容器
    1. docker run --name opengauss --privileged=true -d -e GS_PASSWORD=password@123 -p 5566:5432 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/enmotech/opengauss:5.0.2
    复制代码
  • 检察容器
    1. docker ps
    复制代码

  • 进入容器检察,如下即为乐成
    1. docker exec -it opengauss sh
    复制代码
    1. su - omm
    复制代码
    1. gsql
    复制代码

Navicat远程连接opengauss

   opengauss基于postgresql,所以选择postgresql连接即可
  不过连接前先到雨云控制台配置端口映射,外网端口写10000~60000之内的数字即可,我这里是15566

navicat按照以下格式填写

连接乐成之后显示如下

优化

   毕竟是数据库,所以占用的内存比较大,我的云服务器选的是1G内存的,使用opengauss会出现内存不够而被杀死的环境,必要我回到服务器重新手动启动,所以必要办理的就是两个标题:1、自动重启;2、扩大内存
  自动重启

自动重启比较简单,运行一行命令即可
  1. docker update --restart=always opengauss
复制代码
扩大内存

购买的内存是固定的,只能花钱升级,但有个能缓解的方法——虚拟内存,固然结果不大,但能让内存需求突然增大的环境下保证容器不被杀死,也算是一个勉强能用的法子。

  • 检察是否开启虚拟内存
    1. swapon -s
    复制代码
    若什么都没输出,则说明没有虚拟内存
  • 创建swap文件
    1. fallocate -l 2G /swapfile
    复制代码
    一样平常是内存容量x1.5倍巨细,我这里直接给了2G,可以根据自身必要修改
  • 设置swap文件的权限
    1. chmod 600 /swapfile
    复制代码
  • 格式化swap文件
    1. mkswap /swapfile
    复制代码
  • 启用swap文件
    1. swapon /swapfile
    复制代码
  • 设置开机自动挂载swap文件
    1. echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
    复制代码
  • 检察是否开启虚拟内存
    1. swapon -s
    复制代码

  • 检察内存使用环境
    1. free -h
    复制代码
    由于我已经配置过了,所以这里没法给到图片,理论上此时能看到Swap还未被使用,uesd为0,且Mem的可用内存available很低
  • docker使用虚拟内存
    1. vim /etc/default/docker
    复制代码
    在末尾添加
    1. DOCKER_OPTS="--storage-driver=devicemapper --storage-opt dm.override_udev_sync_check=true"
    复制代码
    重启docker
    1. systemctl restart docker
    复制代码
  • 再次检察内存使用环境
    1. free -h
    复制代码

    此时可以看到虚拟内存正在被使用,且可用内存变多了
   至此,圆满完成。不过发起还是直接上2G大概更高内存的服务器,1G的用来运行数据库只能勉强使用,高频操作还是会吃不消

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

梦见你的名字

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表