我想为我的设置结构脚本创建一个数据库用户,但 createuser 具有交互式密码输入功能,并且接缝不喜欢结构。
问问题
3873 次
3 回答
35
要使用 Fabric 示例扩展答案...
# In fabfile.py
def create_database():
"""Creates role and database"""
db_user = get_user() # define these
db_pass = get_pass()
db_name = get_db_name()
sudo('psql -c "CREATE USER %s WITH NOCREATEDB NOCREATEUSER " \
"ENCRYPTED PASSWORD E\'%s\'"' % (db_user, db_pass), user='postgres')
sudo('psql -c "CREATE DATABASE %s WITH OWNER %s"' % (
db_name, db_user), user='postgres')
于 2011-01-11T20:38:40.427 回答
8
只需使用普通 SQL 创建一个新用户:
CREATE ROLE user_name WITH ENCRYPTED PASSWORD 'your password';
于 2010-04-19T11:36:14.467 回答
1
这可能有一些用处,而无需编写自己的模块,或者您可以将其用作参考。
from fabtools import require
require.postgres.create_db ???
于 2015-11-22T09:06:47.233 回答