Skip to content

Latest commit

 

History

History
205 lines (139 loc) · 9.9 KB

20231030_04.md

File metadata and controls

205 lines (139 loc) · 9.9 KB

开源PolarDB|PostgreSQL 应用开发者&DBA 公开课 - 2 准备

作者

digoal

日期

2023-10-30

标签

PostgreSQL , PolarDB , 应用开发者 , DBA , 公开课


背景

磨刀不误砍柴功.

二、准备

1、软硬件环境

1.1、笔记本(推荐mac)

可以淘一台性价比高一点的, 建议16G内存以上:

  • macmini: M1 16G 256 闲鱼 3000RMB 左右.
  • macmini: M2 16G 256 教育版 新 4200RMB 左右.
  • macmini: 2018款(i5 32G 256) 闲鱼 3000RMB 左右.
  • mbp: 2019款(i7 32G 256) 无头骑士 闲鱼 2000RMB 左右.

相关文章:

我在github分享的一些macOS使用经验, 大家可以把我的github克隆到本地阅读:

git clone --depth 1 https://github.com/digoal/blog   
cd blog   
grep -i mac README.md   

1.2、docker desktop

为了学习方便, 可以使用docker学习镜像, 里面打包了相关的软件环境, 省去了部署环境带来的时间浪费.

参考文章: https://docs.docker.com/desktop/install/mac-install/

1.3、docker image

我们用到的镜像如下:

x86_64机器使用以下PostgreSQL docker image:

ARM64机器使用以下PostgreSQL docker image:

PolarDB docker image不区分芯片架构:

docker pull polardb/polardb_pg_local_instance  

docker image可以跑这几个地方:

  • 在永久免费的阿里云云起实验室 里面
  • 也可以跑在你的本地电脑中, 就是前面推荐的Mac.
  • 如果你是在校大学生, 可以申请阿里云云工开物的券, 免费购买ECS来完成本公开课的实验.

1.3.1、例子

x86_64 架构macOS 采用如下方式获取PostgreSQL 本公开课教学docker镜像, 启动容器:

# 拉取镜像, 第一次拉取一次即可. 或者需要的时候执行, 将更新到最新镜像版本.      
docker pull registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts      
      
# 启动容器      
docker run --platform linux/amd64 -d -it -P --cap-add=SYS_PTRACE --cap-add SYS_ADMIN --privileged=true --name pg --shm-size=1g registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts    
    
##### 如果你想学习备份恢复、修改参数等需要重启数据库实例的case, 换个启动参数, 使用参数--entrypoint将容器根进程换成bash更好. 如下:     
docker run --platform linux/amd64 -d -it -P --cap-add=SYS_PTRACE --cap-add SYS_ADMIN --privileged=true --name pg --shm-size=1g --entrypoint /bin/bash registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts
##### 如果采用以上启动方式, 进入容器后, 需要手工启动数据库实例: su - postgres; pg_ctl start;      
      
# 进入容器      
docker exec -ti pg bash      
      
# 连接数据库      
psql      

ARM64 架构macOS 采用如下方式获取PostgreSQL 本公开课教学docker镜像, 启动容器:

# 拉取镜像, 第一次拉取一次即可. 或者需要的时候执行, 将更新到最新镜像版本.      
docker pull registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts_arm64      
      
# 启动容器      
docker run -d -it -P --cap-add=SYS_PTRACE --cap-add SYS_ADMIN --privileged=true --name pg --shm-size=1g registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts_arm64    
    
##### 如果你想学习备份恢复、修改参数等需要重启数据库实例的case, 换个启动参数, 使用参数--entrypoint将容器根进程换成bash更好. 如下:     
docker run -d -it -P --cap-add=SYS_PTRACE --cap-add SYS_ADMIN --privileged=true --name pg --shm-size=1g --entrypoint /bin/bash registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts_arm64      
##### 如果采用以上启动方式, 进入容器后, 需要手工启动数据库实例: su - postgres; pg_ctl start;      
      
# 进入容器      
docker exec -ti pg bash      
      
# 连接数据库      
psql      

1.4、为了提升访问放在github里的本门公开课的教程内容, 你可以参考如下文章, 自己决定是否需要再配置一下环境:

2、参考学习资料

有些内容我无法在公开课中详细介绍, 大家一定要学会自学, 以下是我整理的学习资料.

建议大家第一步是熟悉这些材料的目录, 把目录掌握的好处是遇到问题可以快速定位需要翻阅的详细内容.

2.1、数据库概念以及SQL基础

2.2、数据库原理

2.3、手册

2.4、代码

2.5、老鸟杂谈 & 精选

2.6、实验手册

2.7、PolarDB 参考学习资料

3、学习交流渠道

4、这门课程以讲解开发者|开发者|架构师需要掌握的PostgreSQL|PolarDB数据库功能、原理和实用技巧为主, 重在通过实操消化课程内容. 同时有想法的你肯定想把所学内化并呈现成你自己的产品|作品、影响力, 可以乘着云资源打骨折价的时候, 申请一些(ECS, PolarDB)以备使用.

对于在生产环境使用数据库的同学, 推荐一些开源/商业的相关产品供大家选择.

4.1、云数据库服务推荐:

4.2、自建开源/商业服务/周边生态工具推荐:

digoal's wechat