在GCE上安装PostgreSQL需要root密码才能运行sudo -u postgresql
。这会提示输入密码,我从未给出过密码
我如何以不同的方式获取此传递,或以任何方式从shell运行postgresql命令?
答案 0 :(得分:0)
如果要对postgresql服务器运行命令,则不需要使用sudo,只需使用此语法进入Postgresql Interactive Shell:
psql -U username database_name
OR
psql -U username hostname database_name
将用户名替换为您的postgresql用户名主机名(如果未在同一服务器上运行),其中包含服务器主机名和 database_name 您的数据库的名称。例如:
psql -U postgressql customers
答案 1 :(得分:0)
通常sudo
需要您的用户帐户密码。因此,假设您运行命令的帐户列在sudoers
文件中,它提示您输入的密码应该是您自己的密码。您是否尝试过,而不是root或postgresql密码,您似乎没有(甚至可能没有设置)。
答案 2 :(得分:0)
您的系统用户postgresql没有密码(我声明没有证据...但我认为您会发现这是真的。)
通常你应该使用这样的命令:
# Test that YOU can use psql (as postgres) to run a query:
psql -U postgres -c 'select * from pg_catalog.pg_user;'
# Test an interactive session:
psql -U postgres my_database
my_database=# select 42 as the_answer;
# Create a new database
psql -U postgres my_database
my_database=# create database mydb;
另外,也许可以这样登录(it usually is):
sudo su postgres
你可以用它来运行createdb。但是自己运行psql可能更好。