ubuntu11.04下POSTGRES SQL 创建角色,赋予角色访问数据库权限及sqlalchmey的database_url配置

在Ubuntu 11.04上,通过`sudo -u postgres psql`创建PostgreSQL角色和数据库,并修改`pg_hba.conf`文件授权。数据库URL配置示例包括使用不同的驱动和参数。接着,重启数据库服务,以`postgresql://scott:tiger@localhost/mydatabase`等示例展示SQLAlchemy的database_url配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sudo -u postgres psql
postgres=# create role username login;
postgres=# create database databasename owner username;

然后修改/etc/postgresql/8.4/main/pg_hba.conf,在all/all前加一行
local databasename username trust
对应数据库url配置: dialect+driver://username@/database
host databasename  username 127.0.0.1/32  trust
对应数据库url配置:dialect+driver://username@host:port/database

然后重启sql服务
sudo /etc/init.d/postgresql restart
或  sudo service postgresql restart

sqlalchemy的database的url配置 dialect+driver://username:password@host:port/database
# postgresql - psycopg2 is the default driver.
pg_db = create_engine('postgresql://scott:tiger@localhost/mydatabase')
pg_db = create_engine('postgresql+psycopg2://scott:tiger@localhost/mydatabase')
pg_db = create_engine('postgresql+pg8000://scott:tiger@localhost/mydatabase')
pg_db = create_engine('postgresql+pypostgresql://scott:tiger@localhost/mydatabase')

# postgresql on Jython
pg_db = create_engine('postgresql+zxjdbc://scott:tiger@localhost/mydatabase')

# mysql - MySQLdb (mysql-python) is the default driver
mysql_db = create_engine('mysql://scott:tiger@localhost/foo')
mysql_db = create_engine('mysql+mysqldb://scott:tiger@localhost/foo')

# mysql on Jython
mysql_db = create_engine('mysql+zxjdbc://localhost/foo')

# mysql with pyodbc (buggy)
mysql_db = create_engine('mysql+pyodbc://scott:tiger@some_dsn')

# oracle - cx_oracle is the default driver
oracle_db = create_engine('oracle://scott:tiger@127.0.0.1:1521/sidname')

# oracle via TNS name
oracle_db = create_engine('oracle+cx_oracle://scott:tiger@tnsname')

# mssql using ODBC datasource names.  PyODBC is the default driver.
mssql_db = create_engine('mssql://mydsn')
mssql_db = create_engine('mssql+pyodbc://mydsn')
mssql_db = create_engine('mssql+adodbapi://mydsn')
mssql_db = create_engine('mssql+pyodbc://username:password@mydsn')
# sqlite://<nohostname>/<path>
# where <path> is relative:
sqlite_db = create_engine('sqlite:///foo.db')

# or absolute, starting with a slash:
sqlite_db = create_engine('sqlite:////absolute/path/to/foo.db')



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值