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. mac 用 brew
  2. Python+Django+Ansible Playbook自动化运维项目实战(二)
  3. ie11 不能调试 因为 ie的bug
  4. HDU 1003 Maxsum
  5. android 录音原始文件_音频采集:Android基于AudioRecord的实现
  6. docker cp :用于容器与主机之间的数据拷贝
  7. 【安卓项目】—— 口算测试APP(教程源自B站)
  8. 最大功率跟踪mppt
  9. 数字图像处理第二次试验:图像增强
  10. 20210729 线性增长条件和全局Lipschitz条件的关系
  11. 关于连接数据库出现时差问题的解决方法
  12. 吴恩达深度学习系列笔记
  13. 服务器网卡光模块位置,收藏:详解服务器、磁盘和网卡知识
  14. 电压放大倍数公式运放_运算放大器的放大倍数如何计算
  15. BZOJ 2563 : 阿狸和桃子的游戏
  16. QT 关于颜色的总结
  17. 网站提示DNS_PROBE_FINISHED_NXDOMAIN错误如何修复
  18. 面试请假攻略,不用裸辞也能找到工作
  19. luogu P4299 首都
  20. RFID仓库管理系统之售后产品的管理-新导智能

热门文章

  1. 【外汇天眼】MT4 vs MT5:哪个更适合外汇初学者
  2. 基于人眼纵横比计算的人眼闭合检测算法
  3. 聚类算法之K-means
  4. 使用美图秀秀制作电子喜帖:分享幸福新方法
  5. 卸载、安装驱动注意事项
  6. html css js调用dll,node调用dll 方法,及详细步骤
  7. echarts详细说明
  8. 微信拍一拍小尾巴生成源码
  9. 鸿蒙系统有哪些手机可以应用,鸿蒙系统手机有哪些
  10. China Mobile 移动