我们正在考虑将我们的应用程序作为 Xen 映像部署到一家我们还不能 100% 确定的托管公司。他们可以访问我们虚拟硬盘上的随机数据吗?
此页面说不:
关于域
Dom0 和 domU 是独立的实体。除了通过登录,您无法从 dom0 访问 domU...
但我想非常非常确定。如果有我不理解的“n00b”问题,那很好:-)。只需向我指出它们。
我正在处理一个可以有数千个表的数据库系统。问题是,当我尝试使用 备份它时pg_dump
,有时会收到以下错误:
pg_dump: WARNING: out of shared memory
pg_dump: SQL command failed
pg_dump: Error message from server: ERROR: out of shared memory
HINT: You might need to increase max_locks_per_transaction.
pg_dump: The command was: LOCK TABLE public.foo IN ACCESS SHARE MODE
我当然可以增加max_locks_per_transaction
设置。但问题是表的数量可能会有所不同。我不想每次出现故障时都必须不断地重新访问此设置(假设我们注意到了故障,因为这是在一个 cron 作业中!)。
解决这个问题的最佳方法是什么?目前我正在编写一个 Perl 脚本,该脚本将列出所有表,然后调用pg_dump
“块”以限制表锁的数量,但我敢打赌我可以做得更好。
我正在将 CentOS 5.3 系统从 MySQL 迁移到 PostgreSQL。我们机器的设置方式是将最大的磁盘分区挂载到/home
. 这是我无法控制的,由托管服务提供商管理。/home
无论如何,出于这个原因,我们显然希望数据库文件处于打开状态。
使用 MySQL,我们执行了以下操作:
my.cnf
并将datadir
设置更改为/home/mysql
/home/mysql(/.*)?
为mysqld_db_t
restorecon -R /home/mysql
分配标签一切都很好。
然而,使用 PostgreSQL,我做了以下事情:
/etc/init.d/postgresql
和更改为和PGDATA
PGLOG
/home/pgsql/data
/home/pgsql/pgstartup.log
/home/pgsql/pgstartup.log
添加了要设置为的新策略记录postgresql_log_t
/home/pgsql/data(/.*)?
添加了要设置为的新策略记录postgresql_db_t
restorecon -R /home/pgsql
分配标签此时,我仍然无法启动 PostgreSQL。pgstartup.log 说:
# cat pgstartup.log
postmaster cannot access the server configuration file "/home/pgsql/data/postgresql.conf": Permission denied
/var/log/messages
奇怪的是我在or中没有看到任何与此相关的消息/var/log/secure
,但是如果我关闭 SElinux,那么一切正常。
我确保所有权限都正确(文件为 600,目录为 700)以及所有权(postgres:postgres)。
谁能告诉我我做错了什么?
我正在使用来自commandprompt.com的 Yum 存储库,版本 8.3.7。
编辑: 我的问题特别提到/home
目录的原因是,如果我对任何其他目录(例如/var/lib/pgsql2
or )执行所有这些步骤/usr/local/pgsql
,那么它会按预期工作。