Amazon Redshift documentation for stl_load_errorsは「このテーブルはすべてのユーザーに表示されます」と記載しています。しかし、スーパーユーザー(936行)と非スーパーユーザー(0行)を照会すると、結果が異なります。スーパーユーザー以外のユーザーが0行を返すようにクエリが実行されるのはなぜですか?スーパーユーザー以外のユーザーがRedshiftでstl_load_errorsのデータを参照できないのはなぜですか?
私が実行したクエリは次のとおりです。
スーパー:
$ psql -U masteruser -h XX.XX.XX.XX -p 5439 bi -w -c "select count(*) from stl_load_errors"
count
-------
936
(1 row)
非スーパーユーザ:
$ psql -U emonsen -h XX.XX.XX.XX -p 5439 bi -w -c "select count(*) from stl_load_errors"
count
-------
0
(1 row)
さらに私は赤方偏移は "emonsenは" stl_load_errorsに適切な権限を持っていると考えていることを示すためにHAS_TABLE_PRIVILEGEを使用することができます。
$ psql -U masteruser -h XX.XX.XX.XX -p 5439 bi -w -c "select has_table_privilege('emonsen', 'stl_load_errors', 'select')"
has_table_privilege
---------------------
t
(1 row)
"emonsen"にすべてのユーザーに負荷エラーが表示されるようにする方法はありますか? – meva
残念ながらいいえ! masteruserだけがその特権を持っています。 –