2024年PostgreSQL 9,2024最新大厂软件测试面经
PostgreSQL 9.6.6 + 原生流复制node1节点为主节点,node2节点为异步流复制节点基础功能,原生支持流复制,用于数据级备份无高可用架构设计。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
1. 背景描述
PostgreSQL 9.6.6数据库,基于CentOS 7操作系统的的源码编译安装
2. 架构基础概述
- PostgreSQL 9.6.6 + 原生流复制
- node1节点为主节点,node2节点为异步流复制节点
3. 功能说明摘要
- 基础功能,原生支持流复制,用于数据级备份
- 无高可用架构设计
4. 基础环境配置
4.1 系统及软件版本
- CentOS 7 操作系统
- PostgreSQL 9.6.6安装包
4.2 主机名、IP和端口规划(示例)
- 主机名:node1, IP:192.168.6.201(物理), 端口:TCP 5432;
- 主机名:node2, IP:192.168.6.202(物理), 端口:TCP 5432;
4.3 主机文件目录规划(示例)
软件安装目录:/app/pg9.6
数据库数据目录:/data/pgdata,属组:postgres,700
数据库归档目录:/bak/pgarch ,属组:postgres,700
4.4 配置系统/ETC/HOSTS
# echo "192.168.6.201 node1 192.168.6.202 node2" >> /etc/hosts
4.5 系统时间检查与配置
可以使用ntp服务或手工调整时间
`# date
timedatectl`
4.6 禁用SELINUX
`# sed -i s/“SELINUX=enforcing”/“SELINUX=disabled”/g /etc/selinux/config
setenforce 0
getenforce`
4.7 关闭部分系统相关服务
`# systemctl disable firewalld
systemctl stop firewalld
systemctl disable NetworkManager
systemctl stop NetworkManager
systemctl disable libvirtd
systemctl stop libvirtd`
4.8 调整部分系统相关参数
`# echo "# For PG
vm.min_free_kbytes = 1048576
kernel.sem = 500 512000 500 1024
net.ipv4.tcp_keepalive_time = 360
">> /etc/sysctl.conf
sysctl -p
echo "# For PostgreSQL
postgres soft nproc 65535
postgres hard nproc 65535
postgres hard nofile 65535
postgres soft nofile 65535
postgres soft memlock unlimited
postgres hard memlock unlimited
" >> /etc/security/limits.conf`
5. 安装及基础配置
5.1 创建系统POSTGRESQL安装用户
node1、node2节点,root用户下,创建系统用户,用于安装部署PostgreSQL数据库,样例初始用户密码为postgres,生产请勿使用;
`# userdel -r postgres
useradd postgres
echo -e “postgres\npostgres\n” | passwd postgres`
5.2 数据库的编译和安装
postgres用户,一并安装Contrib及说明手册
$ tar -xzf postgresql-9.6.6.tar.gz $ cd postgresql-9.6.6/ $ ./configure --prefix=/app/pg9.6 --with-python $ make world $ make install-world
5.3 用户环境变量配置
`$ echo "
For PG ENV_SETTING
export PGHOME=/app/pg9.6
export PGPORT=5432
export PGDATA=/data/pgdata
export PATH=$PGHOME/bin:$PATH
export LD_LIBRARY_PATH=$PGHOME/lib
export MANPATH=$PGHOME/share/man/:$MANPATH
" >> ~/.bash_profile
$ source ~/.bash_profile`
5.4 初始化数据库
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618608311)**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
更多推荐
所有评论(0)