尝试使用 AWS Aurora PostgreSQL
首先
以下是我使用 Aurora 的机会,按照我自己的方式做出尝试的笔记。
创建数据库
在管理控制台上,点击”创建数据库”,选择创建方式和引擎类型。选择 PostgreSQL 兼容的版本。

选择最新的13.6引擎版本。由于这是用于验证的,所以选择“开发/测试”模板。

请填写以下必要信息。在登录时需要验证身份。

为了进行验证,选择通用的小型实例类型。

选择适当的VPC等。

我們將按照默認設置繼續進行。

数据库名称是默认创建的数据库。如果为空,则不会创建。登录后,需要手动创建,所以留空。

为了进行验证,我们将对加密、性能洞察和禁用进行设置。

当将维护窗口设为”选择窗口”时,您可以自定义维护期间。

点击”创建数据库”按钮。

连接到 Aurora 数据库
获取Aurora分片的端点
复制Writer实例的终端节点。

安装 PostgreSQL 客户端
- PostgreSQL クライアントをインストールする
sudo amazon-linux-extras install -y postgresql13
另外,如果想要在特定的版本上重新安装,请按照以下步骤进行操作:首先卸载 PostgreSQL 13,然后安装 PostgreSQL 12。
postgresql13 クライアントをアンインストールする
sudo yum remove $(yum list installed | grep amzn2extra-postgresql13 | awk '{ print $1 }')
- アンインストールされたことを確認する
[ec2-user@ip-172-31-8-7 ~]$ psql
-bash: /usr/bin/psql: No such file or directory
amazon-linux-extras でインストール可能なトピックを確認する
[ec2-user@ip-172-31-8-7 ~]$ amazon-linux-extras list | grep 'postgresql'
5 postgresql9.6 available \
6 postgresql10 available [ =10 =stable ]
41 postgresql11 available [ =11 =stable ]
58 postgresql12 available [ =stable ]
59 postgresql13=latest enabled [ =stable ]
postgresql13 トピックを非有効化する
sudo amazon-linux-extras disable postgresql13
postgresql12 クライアントをインストールする
sudo amazon-linux-extras install -y postgresql12
即使在未禁用的情况下安装 PostgreSQL 12,也会安装 PostgreSQL 13。
[ec2-user@ip-172-31-8-7 ~]$ psql --version
psql (PostgreSQL) 13.3
登录服务器
psql コマンドでサーバにログインする。パスワードを聞かれるので入力する。
psql
-h ・・・ サーバのホスト名
-p ・・・ ポート番号
-U ・・・ ログインユーザー名
-d ・・・ 接続先データベース
psql -h database-1-instance-1.xxxxxxxx.ap-northeast-1.rds.amazonaws.com -p 5432 -U postgres -d postgres
增删改查 – 示例
-
- DB を作成する
CREATE DATABASE
postgres=> CREATE DATABASE mydb;
CREATE DATABASE
postgres=> \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
mydb | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
rdsadmin | rdsadmin | UTF8 | en_US.UTF-8 | en_US.UTF-8 | rdsadmin=CTc/rdsadmin
template0 | rdsadmin | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/rdsadmin +
| | | | | rdsadmin=CTc/rdsadmin
template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
(5 rows)
- DB を切り替える
postgres=> \c mydb
-
- テーブルを作成する。(大文字でテーブル名を作成したい場合、ダブルクォーテーションで囲う)
CREATE TABLE
作成した後、\d でテーブル一覧を表示する。
mydb=> CREATE TABLE "movies" (
title varchar(100) PRIMARY KEY,
year integer
);
CREATE TABLE
mydb=> \d
List of relations
Schema | Name | Type | Owner
--------+--------+-------+----------
public | movies | table | postgres
(1 row)
-
- 行を挿入する
INSERT
mydb=> INSERT INTO movies (title, year) VALUES ('Fight Club', 1999);
INSERT 0 1
mydb=> INSERT INTO movies VALUES ('Frozen', 2013);
INSERT 0 1
-
- テーブルの全データを表示する
SELECT
mydb=> SELECT * FROM movies;
title | year
------------+------
Fight Club | 1999
Frozen | 2013
(2 rows)
-
- テーブルの全行を削除する
DELETE
mydb=> DELETE FROM movies;
DELETE 2
-
- テーブルを削除する
DROP TABLE
mydb=> DROP TABLE movies;
DROP TABLE
mydb=> \d
Did not find any relations.
- ログアウト
mydb=> \q
获取和恢复快照
点击”获取快照”。

请提供所需的信息,然后点击”获取快照”。

如果想要进行恢复,选择想要恢复的快照,并点击“恢复快照”。

请输入识别号码。

选择实例类型。

点击“还原数据库集群”。
使用 CloudFormation 创建 Aurora PostgreSQL。
我使用CloudFormation创建了Aurora PostreSQL。
AWSTemplateFormatVersion: 2010-09-09
Resources:
AuroraCluster:
Type: 'AWS::RDS::DBCluster'
Properties:
Engine: aurora-postgresql
EngineMode: provisioned
EngineVersion: '13.6'
MasterUsername: postgres
MasterUserPassword: PostgresAdmin1!
AuroraInstance:
Type: 'AWS::RDS::DBInstance'
Properties:
Engine: aurora-postgresql
DBInstanceClass: db.t3.medium
DBClusterIdentifier: !Ref AuroraCluster
以下是模板执行的结果。

请参阅此文