小编Maj*_*imi的帖子

如何在没有密码提示的情况下使用 psql?

我写了一个脚本来REINDEX索引数据库中的索引。这是其中之一:

echo -e "\nreindex for unq_vbvdata_vehicle started at: `date "+%F %T"`" >> ${LOG_FILE}
psql -U ${USERNAME} -h ${HOSTNAME} -d ${DBNAME} -c "REINDEX INDEX scm_main.unq_vbvdata_vehicle;"
if [[ ${?} -eq 0 ]]; then
    echo "reindex for unq_vbvdata_vehicle finished at: `date "+%F %T"`" >> ${LOG_FILE}
else
    echo "reindex for unq_vbvdata_vehicle failed" >> ${LOG_FILE}
    exit 1
fi
Run Code Online (Sandbox Code Playgroud)

问题是我无法在独立模式下运行此脚本。psql每次运行都提示输入密码。还有两个限制:

  1. 我无法在没有密码的数据库上创建用户。

  2. 因为REINDEX锁表,我应该sleep <num>在每个REINDEX.

有没有自动解决方案?

postgresql psql

106
推荐指数
4
解决办法
20万
查看次数

pg_stat_user_tables中n_live_tup和n_dead_tup是什么意思

n_live_tupand n_dead_tupin pg_stat_user_tablesor是什么意思pgstattuple

postgresql

26
推荐指数
1
解决办法
3万
查看次数

表空间是否类似于逻辑卷?

我对 PostgreSQL 中的表空间感到困惑。是不是类似于 LVM?我的意思是当磁盘已满时,我们可以添加另一个磁盘,然后格式化CREATE TABLESPACE tblspace LOCATION /media/disk2/data吗?够了吗?或者我们应该手动使用ALTER数据库、表或索引来利用它?

postgresql tablespaces

6
推荐指数
1
解决办法
4013
查看次数

fsync 和 synchronous_commit 的区别 - postgresql

fsync和 和有synchronous_commit什么区别?我阅读了文档,我唯一理解的是他们都试图将更新物理写入磁盘。

postgresql

6
推荐指数
1
解决办法
6268
查看次数

访问 psql 从 bash 返回的列

我想在 bash 中使用 psql 返回的值。这是脚本:

psql "connection parameters" -c "SELECT pg_database_size('dbname');"
Run Code Online (Sandbox Code Playgroud)

输出是这样的:

 pg_database_size 
------------------
          5773072
(1 row)
Run Code Online (Sandbox Code Playgroud)

但我只想要这样5773072我就可以在日志记录中使用它。有人可以帮忙吗?

postgresql psql

2
推荐指数
1
解决办法
6152
查看次数

VACUUM ANALYZE 后 pg_relation_size 没有显示任何差异

我写了一个脚本来备份 postgresql COPY,然后删除这些记录。pg_relation_size删除前后我都用过。

  1. pg_relation_size
  2. 删除
  3. 真空分析
  4. pg_relation_size

但两者都pg_relation_size显示相同的结果。这是否意味着VACUUM ANALYZE没有帮助?

postgresql vacuum

2
推荐指数
1
解决办法
749
查看次数

标签 统计

postgresql ×6

psql ×2

tablespaces ×1

vacuum ×1