Linux 下部署 PolarDB 数据库

  • 第一章:环境准备
  • ① 检查 THP 的启用状态和配置
  • ② 修改配置文件 sysctl.conf
  • ③ 新增配置文件 polardb_limits.conf
  • ④ 创建 polardb 专用系统用户
  • ⑤ 给 polardb 专用系统用户授权
  • 第二章:数据库安装与配置
  • ① 切换用户并安装数据库
  • ② 编辑配置文件 bash_profile
  • ③ 初始化数据库
  • ④ 修改配置文件 postgresql.conf
  • ⑤ 修改配置文件 pg_hba.conf
  • ⑥ 数据库服务的启用与停用
  • ⑦ 检查数据库正常可用
  • 第三章:其它
  • ① 解决 /data 路径不为空的初始化数据库报错问题
  • ② 数据库版本查看
  • ③ 数据库命令帮助

第一章:环境准备

① 检查 THP 的启用状态和配置

下面的配置是阿里云数据库的专家推荐的,可以优化 polardb 的性能。

# 检查THP的状态是否为always,中括号包括的即为当前状态
cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never
# 确认分页大小为2M
grep Hugepage /proc/meminfo
Hugepagesize:       2048 kB

② 修改配置文件 sysctl.conf

/etc/sysctl.conf 里插入内容,然后执行 sudo sysctl -p 命令生效。

fs.aio-max-nr=1048576
fs.file-max=76724600
fs.nr_open=20480000
kernel.sem=4096  2147483647  2147483646  512000
kernel.shmall=107374182
kernel.shmmax=274877906944
kernel.shmmni=819200
net.core.netdev_max_backlog=10000
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.somaxconn=4096
net.core.wmem_default=262144
net.core.wmem_max=4194304
net.ipv4.ip_local_port_range=40000  65535
net.ipv4.tcp_fin_timeout=5
net.ipv4.tcp_keepalive_intvl=20
net.ipv4.tcp_keepalive_probes=3
net.ipv4.tcp_keepalive_time=60
net.ipv4.tcp_max_syn_backlog=4096
net.ipv4.tcp_max_tw_buckets=262144
net.ipv4.tcp_mem=8388608  12582912  16777216
net.ipv4.tcp_rmem=8192  87380  16777216
net.ipv4.tcp_synack_retries=2
net.ipv4.tcp_syncookies=1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_wmem=8192  65536  16777216
vm.dirty_background_bytes=409600000
vm.dirty_expire_centisecs=3000
vm.dirty_ratio=80
vm.dirty_writeback_centisecs=100
vm.mmap_min_addr=65536
vm.nr_hugepages=0
vm.nr_overcommit_hugepages=1000000
vm.overcommit_memory=0
vm.overcommit_ratio=90
vm.swappiness=0
vm.zone_reclaim_mode=0

③ 新增配置文件 polardb_limits.conf

创建下面的文件:/etc/security/limits.d/polardb_limits.conf
里面添加下面的参数。

* soft    nofile  655360
* hard    nofile  655360
* soft    nproc   655360
* hard    nproc   655360
* soft    memlock unlimited
* hard    memlock unlimited
* soft    core    unlimited
* hard    core    unlimited

④ 创建 polardb 专用系统用户

# 创建用户组
groupadd polardb
# 在用户组polardb下创建用户
useradd -g polardb polardb
# 更改用户密码
passwd polardb
更改用户 polardb 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

⑤ 给 polardb 专用系统用户授权

visudo 命令直接编辑,在 root All 授权附近添加下面的授权命令。
/+关键词 可以进行查找,n键 表示查找下一个。

第二章:数据库安装与配置

① 切换用户并安装数据库

# 切换用户
su - polardb
# 安装polardb数据库
sudo rpm -ivh /file/PolarDB-O-0200-2.0.0-20201023165925.alios7.x86_64.rpmWe trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:#1) Respect the privacy of others.#2) Think before you type.#3) With great power comes great responsibility.[sudo] password for polardb:
Preparing...                          ################################# [100%]
Updating / installing...1:PolarDB-O-0200-2.0.0-202010231659################################# [100%]

② 编辑配置文件 bash_profile

下面的参数加到 ~/.bash_profile 文件下面。
注: 下面配置文件里的 PGDATA 指向的文件夹里一定要是空的,不然初始化会报错,可以参照第三章的第一节。

export PGPORT=5432
export PGDATA=/data
export LANG=en_US.utf8
export PGHOME=/usr/local/polardb_o_current
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
export PATH=$PGHOME/bin:$PFSHOME/bin/:$PATH
export PGHOST=$PGDATA
export PGUSER=polardb
export PGDATABASE=polardb
# 修改配置文件
vim ~/.bash_profile
# 使配置文件生效
source ~/.bash_profile

③ 初始化数据库

初始化数据库,中间会打出很多日志。

initdb -D $PGDATA -E UTF8 --locale=C --data-checksums -U polardb

有下面的提示时应该就成功了。
注: 如果初始化有问题可以看下第三章的第一节。

④ 修改配置文件 postgresql.conf

跳转到 /data/polardbdata/ 目录下,修改初始化生成的 postgresql.conf 配置文件。
编辑时可以通过 shift+g 跳转到末尾再进行编辑,把下面的内容插入到文档里。

listen_addresses = '*'
port = 5432
max_connections = 2048
unix_socket_directories = '.'
timezone = 'UTC-8'
log_timezone = 'UTC-8'
log_destination = 'csvlog'
logging_collector = on


注: 启用过数据库后,每次修改 postgresql.conf 文件之前都要删除一下缓存文件 $PGDATA/polar_node_static.conf 再进行设置,不然设置可能会不生效。

⑤ 修改配置文件 pg_hba.conf

修改 /data/polardbdata/ 目录下的文件:pg_hba.conf,添加下面的参数。

host all         all 0.0.0.0/0 md5
host replication all 0.0.0.0/0 md5

⑥ 数据库服务的启用与停用

数据库常用命令:

# 启动服务
pg_ctl start -D $PGDATA
# 停止服务
pg_ctl stop -D $PGDATA

服务启用成功标志:

服务停用成功标志:

⑦ 检查数据库正常可用

检查数据库可以直接用 psql 或者用下面给的语句都行。

# 数据库连接检查
psql -h$PGDATA -p$PGPORT

能进入下面的数据库命令行里就 OK

第三章:其它

① 解决 /data 路径不为空的初始化数据库报错问题

初始化报错,修改 PGDATA 指向一个 polardb 用户有权限的空目录。

我计划在 data 下面建一个空文件夹 polardbdata

cd /data
mkdir polardbdata

修改配置文件

# 修改配置文件
vim ~/.bash_profile
# 使配置文件生效
source ~/.bash_profile


再次初始化数据库,中间会打出很多日志。

initdb -D $PGDATA -E UTF8 --locale=C --data-checksums -U polardb

有下面的提示时应该就成功了。

② 数据库版本查看

# 版本查看
psql -h$PGDATA -p$PGPORT -c"select version()"

③ 数据库命令帮助

# 数据库连接检查
psql -h$PGDATA -p$PGPORT

PolarDB 阿里云国产化数据库:linux系统下的详细安装步骤手册相关推荐

  1. LINUX系统下ORACLE19C客户端安装步骤

    LINUX系统下ORACLE19C客户端安装步骤 服务器系统版本:CentOS 7.4 Oracle客户端安装包(19C版本)下载地址: Instant Client for Linux x86-64 ...

  2. Linux系统下adb驱动安装步骤 及 问题总结

    Linux系统下adb驱动安装步骤 及 问题总结 一.安装ADB工具 sudo apt-get update sudo apt-get install android-tools-adb 二.adb驱 ...

  3. k8s简介以及linux环境下的详细安装步骤

    k8s简介以及linux环境下的详细安装步骤 k8s是Kubernetes的简称,Kubernetes中间有8个单词,所以叫k8s,就是这么简单粗暴. 我们可以看到docker的图标是鲨鱼,k8s的图 ...

  4. 阿里云ECS服务器Linux环境下配置php服务器(三)--项目部署篇

    在前两篇里,我们分别介绍了如何购买阿里云服务器,安装基本软件和配置(请看阿里云ECS服务器Linux环境下配置php服务器(一)--基础配置篇) 以及如何安装使用phpMyAdmin(请看阿里云ECS ...

  5. linux系统下源码安装mysql5.6数据库

    linux系统下源码安装mysql5.6数据库 下载mysql数据库相关软件包(百度云盘:http://pan.baidu.com/s/1bnL31c7) 从mysql 5.5版本开始,mysql源码 ...

  6. linux服务器选ubantu或centos_如何通过SSH连接阿里云上的Linux系统

    首先SSH是啥,维基一下: Secure Shell(安全外壳协议,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境[1].SSH通过在网络中创建安全隧道来实现SS ...

  7. linux 自动安装mysql数据库_linux系统下源码安装mysql5.6数据库

    linux系统下源码安装mysql5.6数据库 下载mysql数据库相关软件包(百度云盘:http://pan.baidu.com/s/1bnL31c7) 从mysql 5.5版本开始,mysql源码 ...

  8. linux的软件包是独立的,Linux系统下软件包的安装

    (以下内容是云课堂Linux课程的笔记,个人纯手工记录,课程以RedHat系列为主) Linux系统下软件包的安装方式包括:源代码安装.本地二进制包安装(rpm命令手工安装).在线二进制包安装(yum ...

  9. Linux系统下禅道的安装以及配置教程

    Linux系统下禅道的安装以及配置教程 首先查看Linux安装的版本,64的还是32的! 查看Linux版本:[root@localhost ~]# getconf LONG_BIT 1.Linux中 ...

最新文章

  1. System Center Data Protection Manager 2007补助说明
  2. MySQL 优化必经之路, Explain执行计划 ?
  3. vue中使用百度地图为啥是空白_vue中使用腾讯地图(尝试篇)
  4. 射频篇(三) 模拟、射频器件学习(3) ——锁相环(PLL)
  5. html如何找寻vue文件,如何预览vue文件
  6. .NET操作WORD文档另存为其他格式的文件
  7. java 数据库插入数据_java向数据库插入N条数据
  8. 正则表达式简单语法及常用正则表达式
  9. 中国公司又称雄国际AI大赛,IARPA人脸识别挑战赛依图夺冠
  10. vue项目中使用sass的方法
  11. ORACLE创建表空间、用户语句
  12. 下列不属于计算机完成科学计算机特点的是,通知|1906统考模拟题计算机试卷2...
  13. erstudio安装
  14. error.flash download failed-Target DLL has been cancelled
  15. java计算税后工资switch语句_计算个人所得税!switch语句
  16. 通向架构师的道路(第三天)之apache性能调优 (转)
  17. imageview显示圆形图片
  18. 今日头条,今日特卖自媒体号如何申请。
  19. c语言输出笑脸('\1')
  20. 网站怎么被搜索引擎快速收录?

热门文章

  1. Ubuntu 重装 apt/apt-get
  2. 博世自动驾驶的“改革开放”
  3. Java使用华软通信能力平台实现短信发送
  4. 膨胀卷积神经网络_用膨胀的卷积神经网络生成钢琴音乐
  5. oscam android 编译,phoscam app-phoscam安卓版预约 v1.0官方版_5577安卓网
  6. SqlServer 中的触发器
  7. Linux学习-67-日志服务器设置和日志分析工具(logwatch)安装及使用
  8. java trigger_Quartz教程四:Trigger
  9. Matlab如何绘制带箭头图形
  10. 不高兴的津津1073