哪个用户拥有 postgres 进程?
Which user own the postgres process?
我使用标准安装了 postgresql
rdbms:
sudo apt-get install postgresql
现在我可以看到二进制文件了:
-rwxr-xr-x 1 root root /usr/lib/postgresql/12/bin/postgres
这意味着 root
用户拥有它。
然而:在 docs
You will need to become the operating system user under which PostgreSQL was installed (usually postgres)
我必须切换到 postgres
用户才能连接到服务器以使用我的名字创建新的 role
。
那么谁能解释一下这个矛盾呢?还是我遗漏了什么?
当你这样做时:
sudo apt-get install postgresql
它正在以 root
用户身份安装包 (postgresql) 文件。安装还将创建一个系统用户 postgres
。创建服务器集群时,将使用每个 Create cluster and it will be run as the postgres
user per Running server 分配了 postgres
用户权限的文件来完成。事实上 Postgres 将拒绝 运行 作为 root
用户。要查看服务器是哪个用户 运行ning,请执行以下操作:
ps aux | grep postgres
现在除了系统用户 postgres
之外,还创建了数据库用户 postgres
。并非必须成为系统用户 postgres
才能连接到数据库,您只需使用 -U postgres
和 psql
作为数据库用户 postgres
连接即可.
仅供参考,使用名称 postgres
作为用户是约定而非要求,因此您可能会在其他打包系统中看到一些例外情况。例如 MacOS 包 postgres.app 使名称成为您安装的系统用户名。
我使用标准安装了 postgresql
rdbms:
sudo apt-get install postgresql
现在我可以看到二进制文件了:
-rwxr-xr-x 1 root root /usr/lib/postgresql/12/bin/postgres
这意味着 root
用户拥有它。
然而:在 docs
You will need to become the operating system user under which PostgreSQL was installed (usually postgres)
我必须切换到 postgres
用户才能连接到服务器以使用我的名字创建新的 role
。
那么谁能解释一下这个矛盾呢?还是我遗漏了什么?
当你这样做时:
sudo apt-get install postgresql
它正在以 root
用户身份安装包 (postgresql) 文件。安装还将创建一个系统用户 postgres
。创建服务器集群时,将使用每个 Create cluster and it will be run as the postgres
user per Running server 分配了 postgres
用户权限的文件来完成。事实上 Postgres 将拒绝 运行 作为 root
用户。要查看服务器是哪个用户 运行ning,请执行以下操作:
ps aux | grep postgres
现在除了系统用户 postgres
之外,还创建了数据库用户 postgres
。并非必须成为系统用户 postgres
才能连接到数据库,您只需使用 -U postgres
和 psql
作为数据库用户 postgres
连接即可.
仅供参考,使用名称 postgres
作为用户是约定而非要求,因此您可能会在其他打包系统中看到一些例外情况。例如 MacOS 包 postgres.app 使名称成为您安装的系统用户名。