各Tableの権限情報を確認
権限とは、オーナー、オーナー以外にアクセスできるユーザ・ロールとその範囲のこと
\dp
各Schemaの権限情報を確認
\dn+
ロールの一覧を確認
\du
または
\dg
Default Privilegeの確認
SELECT
nspname, -- schema name
defaclobjtype, -- object type
defaclacl -- default access privileges
FROM pg_default_acl a JOIN pg_namespace b ON a.defaclnamespace=b.oid;
カラム数の多いテーブルへのselect結果を見やすく表示
mysqlだと\G
を使う場面で、Postgres/Redshiftだとどうするか?
\x on
//または\x auto
select...
Describe Table?
\d+ tablename
psql -E '\d+ tablename'
show create table?
pg_dump -h <ホスト> -p 5439 -U <ユーザ> -d <DB名> --schema-only --table <schema名>.<テーブル名>
AWS DMSのエラーログを閲覧
select * from STL_LOAD_ERRORS where query=<クエリID>;
select * from STL_LOADERROR_DETAIL where query=<クエリID>;
直近のエラーをだいたいいい感じに閲覧するためのクエリ
select
a.query,
btrim(querytxt) as querytxt,
btrim(err_reason) as err_reason,
btrim(line_number) as line_number,
position,
colname,
type,
btrim(raw_line) as raw_line,
btrim(raw_field_value) as raw_field_value,
len(btrim(raw_field_value)) as len,
btrim(filename) as filename
from stl_load_errors a
join stl_query b on a.query = b.query
order by a.query desc limit 10;
Alterいろいろ
ALTER TABLE mytable RENAME TO foo;
ALTER TABLE mytable OWNER TO myowner;
テーブルのチェックサム
Redshiftのエラーログが記録されるテーブル
COPY文のオプション