暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

一直期待的PolarDB15开源了,快来一键尝鲜(附一键安装以及详细的编译方法)

中启乘数 2024-09-09
481

PolarDB-15开源版正式发布

在九月初,期待已久的PolarDB15开源版正式发布了,按照官方的说法是这个版本非常注重性能提升,对PolarDB进行了深入的性能优化,例如优化SIMD指令集和原子操作指令集的使用,并在事务处理等模块中使能。使用 PGO、BOLT、LTO、代码段大页等系统级优化手段。支持批量读取、扩展,优化IO性能,并进行了深入的参数调优,提供了极致性能。

  • 改进排序功能:改进内存和磁盘排序算法。
  • 增强SQL功能:支持SQL标准的MERGE命令。增加使用正则表达式的新函数,用于检查字符串。
  • 改进逻辑复制功能:支持复制2PC事务,发布内容可以使用WHERE进行过滤,支持一次性发布Schema下所有的表。
  • 优化数据库性能:降低内存占用。崩溃恢复加速等。

一键安装方法

中启乘数科技一直专注在数据库领域,是一家以“数据赋能、价值创新”为发展战略和业务定位的高科技创新企业。乘数科技一直与阿里云及PolarDB社区保持着紧密的联系,围绕PolarDB开源了一系列广受好评的工具(开源地址放在文章结尾):

  1. CLup数据库管理平台:专为PostgreSQL、PolarDB等数据库实现了高可用(包括读写分离)集群功能和基础监控管理以及对数据库进行定时或立即备份,恢复的平台软件。
  2. ZQPool:提供读写分离、高可用、收敛数据库连接等功能的下一代高性能数据库连接池工具

在PolarDB15开源后,乘数科技进行了编译和测试,并第一时间发布了一键安装脚本,帮助大家快速体验PolarDB15新版本,目前支持的PostgreSQL以及PolarDB11和15的一键安装。

一键安装脚本支持版本如下:

数据库软件支持的系统架构和版本
PolarDB-15X86_64: RockyLinux8/9
PolarDB-11X86_64: RockyLinux8/9
PostgreSQL11X86_64: RockyLinux8/9
PostgreSQL12X86_64: RockyLinux8/9
PostgreSQL13X86_64: RockyLinux8/9
PostgreSQL14X86_64: RockyLinux8/9

使用下面的一键安装脚本快速安装PolarDB-15

    wget -qO tmp/clup.sh --no-check-certificate https://get.csudata.com/csuinst/clup.sh && bash /tmp/clup.sh db install

    执行后会出现一个选择列表如下图所示,选择想要安装的版本,这里要安装PolarDB-15,选择6,回车后即可完成安装。

    编译PolarDB15

    编译环境为Rockylinux8

    安装环境依赖

    首先使用下面的命令安装需要的环境依赖包:

      dnf install -y epel-release
      /usr/bin/crb enable
      dnf -y install \
      libicu-devel pam-devel readline-devel \
      libxml2-devel libxslt-devel openldap \
      openldap-devel openldap-clients libuuid-devel \
      xerces-c-devel bison flex gettext tcl-devel \
      python3-devel perl-Test-Simple perl-DBD-Pg \
      perl-ExtUtils-Embed perl-ExtUtils-MakeMaker zlib-devel \
      krb5-devel krb5-workstation krb5-server lcov \
      psmisc libaio-devel fuse-devel cmake wget \
      perl-Pod-Html xz gcc-c++ \
      globus-gssapi-gsi globus-gssapi-gsi-devel \
      protobuf-compiler protobuf-c protobuf-devel perl-CPAN \
      clang llvm llvm-devel lz4-devel libzstd-devel \
      libunwind-devel perl-IPC-Run

      通过编译安装zlog

        wget https://github.com/HardySimpson/zlog/archive/refs/tags/1.2.18.tar.gz
        tar xf 1.2.18.tar.gz
        cd zlog-1.2.18
        make -j8
        make install

        编译安装PFS

          wget https://github.com/ApsaraDB/PolarDB-FileSystem/archive/refs/tags/pfsd4pg-release-1.2.42-20220419.tar.gz
          tar xf pfsd4pg-release-1.2.42-20220419.tar.gz
          cd PolarDB-FileSystem-pfsd4pg-release-1.2.42-20220419
          ./autobuild.sh
          ./install.sh

          编译PolarDB-15

          首先使用Git将PolarDB项目克隆到本地,确认当前分支在POLARDB_15_STABLE

            git clone https://github.com/ApsaraDB/PolarDB-for-PostgreSQL.git
            cd PolarDB-for-PostgreSQL
            git branch -vv

            如何不在POLARDB_15_STABLE分支的话,使用下面的命令创建并切换到该分支

              git checkout -b POLARDB_15_STABLE origin/POLARDB_15_STABLE

              开始编译PolarDB,PolarDB官方已经提供了编译的脚本,这里的job根据编译机器的核数进行调整

                ./build.sh --prefix=/usr/polardb-15 --jobs=16 --ni

                等待一会,当提示编译成功后,就可以在/usr/polardb-15
                下面看到安装好的PolarDB-15。

                尝试运行PolarDB-15

                创建一个polardb用户并切换到该用户下

                  useradd -m -s /bin/bash polardb
                  su - polardb

                  将下面的环境变量添加到polardb用户目录下面的~/.bashrc

                    export PATH=/usr/polardb-15/bin:$PATH
                    export LD_LIBRARY_PATH=/usr/polardb-15/lib:$LD_LIBRARY_PATH
                    export PGUSER=polardb
                    export PGPORT=5432
                    export PGDATABASE=postgres
                    export PGDATA=~/pgdata
                    export PGHOST=127.0.0.1

                    保存后退出,执行下面的命令让刚刚添加的环境变量生效

                      source ~/.bashrc

                      执行下面的命令创建数据库

                        initdb -D pgdata

                        修改配置文件pgdata/postgresql.conf

                          logging_collector = on

                          启动并连接数据库

                            $ psql
                            psql (PostgreSQL 15.8 (PolarDB 15.8.2.0 build ade7f2d1 debug) on x86_64-linux-gnu)
                            Type "help" for help.


                            postgres=#

                            产品开源地址如下,开源不易,如果能帮到大家,请给仓库点一颗小星星,让更多人看到:

                            CLup开源地址:https://gitee.com/csudata/clup

                            ZQPool开源地址:https://gitee.com/csudata/zqpool

                            点击关注乘数科技

                            扫码添加乘数小助手微信号

                            邀您进入《PostgreSQL修炼之道:从小工到专家》

                            读者技术交流群

                                

                            文章转载自中启乘数,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                            评论