psycopg2.connect()
功能描述
此方法创建新的数据库会话并返回新的connection对象。
原型
import os conn=psycopg2.connect(dbname="test",user=os.getenv('user'),password=os.getenv('password'),host="127.0.0.1",port="5432")
参数
关键字 |
参数说明 |
---|---|
dbname |
数据库名称。 |
user |
用户名。 |
password |
密码。 |
host |
数据库IP地址,可指定多IP,IP间以逗号隔开,默认为UNIX socket类型。 |
port |
连接端口号,默认为5432。host为多IP时,如端口号相同,指定一个端口号。否则,端口号与IP一一对应,以逗号隔开。 |
sslmode |
ssl模式,ssl连接时用。 |
sslcert |
客户端证书路径,ssl连接时用。 |
sslkey |
客户端密钥路径,ssl连接时用。 |
sslrootcert |
根证书路径,ssl连接时用。 |
hostaddr |
数据库IP地址。 |
connect_timeout |
客户端连接超时时间。 |
client_encoding |
客户端编码格式。 |
application_name |
application_name的参数值。 |
fallback_application_name |
application_name参数的回退值。 |
keepalives |
控制是否客户端TCP保持连接,默认为1,表示打开;值为0时,表示关闭。若UNIX域套接字连接,则忽略。 |
options |
连接开始时发送给服务器的命令行选项。 |
keepalives_idle |
控制向服务器发送keepalive消息之前不活动的描述,若keepalive被禁用,则忽略此参数。 |
keepalives_interval |
控制未得到服务器确认的keepalive消息应重新传输的描述,若keepalive被禁用,则忽略此参数。 |
keepalives_count |
控制客户端与服务端连接断开之前可能丢失的tcp保持连接的数量。 |
replication |
确认连接使用的是复制协议而不是普通协议。 |
requiressl |
支持sslmode设置。 |
sslcompression |
ssl压缩。设置为1,则通过ssl连接发送的数据将被压缩;设置为0,则禁用压缩。若没有建立ssl的连接,则忽略此参数。 |
sslcrl |
证书吊销列表文件路径,验证ssl服务端证书是否可用。 |
requirepeer |
指定服务器的操作系统用户名。 |
target_session_attrs |
设定连接的主机的类型。主机的类型和设定的值一致时才能连接成功。指定多IP时才会校验此参数。target_session_attrs的设置规则如下:
|
tcp_user_timeout |
在支持TCP_USER_TIMEOUT套接字选项的操作系统上,指定传输的数据在TCP连接被强制关闭之前可以保持未确认状态的最大时长。0值表示使用系统缺省。通过Unix域套接字做的连接忽略这个参数。 |
rw_timeout |
设置客户端连接读写超时时间。 当libpq侧触发超时且连接关闭时,其下发给数据库侧正在运行的业务会被强制终止。该能力受GUC参数check_disconnect_query控制,设置为on表示支持该能力,设置为off表示不支持该能力。 |
返回值
connection对象(连接数据库实例的对象)。
示例
请参见示例:常用操作。