编辑pg_hbaconf文件,添加
host all all 1921681410/24 trust
这样,ip地址在1921681410/24范围内的主机就可以连接Postgresql数据库了。
postgresql数据库在python开发之中是一个使用非常广泛的数据库,但是最近有小伙伴和我说它在使用这个数据库的时候出现了无法释放和关闭连接的问题。那么下面这一篇文章就会来详细的讲解一下这个问题出现的原因和解决方法,往下看看吧。

一、Postgresql连接不释放原因
在postgresql数据库之中进行连接的 *** 作实际上是客户端与服务器之间建立起了tcp socket的连接,但是因为tcp其实是一个虚连接的原因,这就导致了如果两端有任意一个是以非常方式关闭的话就会出现连接一直保持无法关闭的情况,那么解决方法的话去关闭这个连接就可以了。
二、Postgresql连接不释放解决方法
打开任务资源管理器,在其中找到postgresql数据库的进程并且记住其进程号,然后打开命令行。在命令行提示符里使用命令去强行关闭这个进程,示例如下:
kill -s SIGTERM 进程号
命令执行完毕后造成postgresql数据库一直保持死连接的进程就被关闭掉了,那么postgresql数据库也就可以正常关闭了。这种方式只有在数据库的所有 *** 作都执行完毕时才好使用,否则会将postgresql数据库的整个进程都关闭掉,有可能造成数据丢失的问题。
以上就是关于“Postgresql数据库连接无法释放怎么办?这几个方法都可以解决问题”的全部内容了,想要了解更多python的实用知识和代码示例可以持续关注这个频道,每次更新都会有很多新的知识技术分享给大家。
postgresql默认情况下,远程访问不能成功,如果需要允许远程访问,需要修改两个配置文件,说明如下:
1postgresqlconf
将该文件中的listen_addresses项值设定为“”,在90 Windows版中,该项配置已经是“”无需修改。
2pg_hbaconf
在该配置文件的host all all 127001/32 md5行下添加以下配置,或者直接将这一行修改为以下配置
host all all 0000/0 md5
如果不希望允许所有IP远程访问,则可以将上述配置项中的0000设定为特定的IP值。
1、windows下postgresql的安装
我下载的为xxx92exe一路默认安装即可。安装位置为C:\Program Files\PostgreSQL。
安装完毕后,在dos下执行命令
>net user
列出当前系统用户名称。我的用户名为Administrator。
>psql –U Administrator –d postgres
该命令表示通过数据库用户Administrator连接数据库postgres。
l 若显示psql不是内部或外部命令,则说明postgresql的bin文件路径没添加到windows系统中,右击“我的电脑”->”属性”->”高级”->”环境变量”->”Administrator”的用户变量,选中“PATH”,点击编辑,将”C:\Program Files\PostgreSQL\92\bin”添加进去,注意与前面的路径用”;”隔开。电脑重启生效。
l 若显示角色Administrator不存在,则必须在postgresql数据库中添加该用户才能使其可以登录。
在postgresql中
查询系统用户
postgres=#select from pg_user;
查询系统中的数据库
postgres=#select from pg_database;
说明一下:“template1”是Postgresql在初始化时自动创建的测试数据库。
创建postgresql数据库Administrator用户
方式1
在PostgreSQL中创建用户postgreSQL用户Administrator
用SQL Shell(psql)通过用户postgres登录PostgreSQL,创建用户Administrator,
postgres=#create user “Administrator”;
方式2
通过windows下dos创建postgresql用户Administrator
将PostgreSQL文件夹bin路径添加到系统环境中后重启生效
通过windows下dos创建postgresql用户是区分大小写的。
配置客户机访问
为了配置远程主机和用户可以连接到PostgreSQL服务,你需要pg_hbaconf文件。文件包含大量注释记录用于远程访问的选项。在我们的安装示例中,我们允许局域网中任何主机的任何用户访问服务器上的数据库。为了达到这个目的,我们添加以下的一行记录到文件尾:
host all all 19216800/16 trust
这意味着所有IP地址由192168开始的计算机可以访问所有的数据库。最简单的使配置生效的方法就是重启服务器。
在dos下 *** 作,通过createuser –Uolduser –P newuser来创建。
比如我们想创建postgresql数据库用户Administrator。
>createuser –U postgre –P Administrator
这样创建的数据库用户Administrator没有创建数据库的权利,可以通过pgAdmin III登录进行查看。
若使其可以创建数据库可以参照下面内容进行设置:
>createuser –U postgre –s Administrator
这样具有创建数据库能力。
createuser的用法可以通过在dos中输入createuser –help查看。
MicrosoftWindows XP [版本 512600]
(C)版权所有 1985-2001 Microsoft Corp
C:\Documentsand Settings\Administrator>createuser --help
createuser创建一个新的 PostgreSQL 用户
使用方法:
createuser [选项] [用户名]
选项:
-c, --connection-limit=N 角色的连接限制(缺省: 没有限制)
-d, --createdb 此角色可以创建新数据库
-D, --no-createdb 此角色不可以创建新数据库(默认)
-e, --echo 显示发送到服务端的命令
-E, --encrypted 口令加密存储
-i, --inherit 角色能够继承它所属角色的权限
(这是缺省情况)
-I, --no-inherit 角色不继承权限
-l, --login 角色能够登录(这是缺省情况)
-L, --no-login 角色不能登录
-N, --unencrypted 口令不加密存储
-P, --pwprompt 给新角色指定口令
-r, --createrole 这个角色可以创建新的角色
-R, --no-createrole 这个角色没有创建其它角色的权限(默认)
-s, --superuser 角色将是超级用户
-S, --no-superuser 角色不能是超级用户(默认)
-V, --version 输出版本信息, 然后退出
--interactive 提示缺少角色名及其属性
而不是使用默认值
--replication 角色能启动复制
--no-replication 角色不能启动复制
-, --help 显示此帮助, 然后退出
联接选项:
-h, --host=HOSTNAM 数据库服务器所在机器的主机名或套接字目录
-p, --port=PORT 数据库服务器端口号
-U, --username=USERNAME 联接用户 (不是要创建的用户名)
-w, -no-password 永远不提示输入口令
-W, --password 强制提示输入口令
臭虫报告至<pgsql-bugs@postgresqlorg>
C:\Documentsand Settings\Administrator>
方式3
在C:\Program Files\PostgreSQL\92\bin文件夹下有可执行文件createuserexe,我双击后,该文件执行一闪就关闭,只好在dos中输入cmd打开窗口,将该文件拖入窗口中,在输入“ –U postgres –P Adiminisrator”然后回车,如下图所示,即可创建数据库用户Administrator。但此时该用户不具有创建database的能力,可以通过pgAdmin III查看。
psql的用法可以通过在dos下输入psql –help查看,如下图所示。
MicrosoftWindows XP [版本 512600]
(C) 版权所有1985-2001 Microsoft Corp
C:\Documentsand Settings\Administrator>psql --help
psql是PostgreSQL 的交互式客户端工具。
使用方法:
psql [选项] [数据库名称 [用户名称]]
通用选项:
-c,--command=命令 执行单一命令(SQL或内部指令)然后结束
-d, --dbname=数据库名称 指定要连接的数据库 (缺省:"Administrator")
-f, --file=文件名 从文件中执行命令然后退出
-l, --list 列出所有可用的数据库,然后退出
-v, --set=, --variable=名称=值
为psql变量(名称)设定值
-V, --version 输出版本信息, 然后退出
-X, --no-psqlrc 不读取启动文档(~/psqlrc)
-1 ("one"), --single-transaction
作为一个单一事务来执行命令文件
-, --help 显示此帮助, 然后退出
输入和输出选项:
-a, --echo-all 显示所有来自于脚本的输入
-e, --echo-queries 显示发送给服务器的命令
-E, --echo-hidden 显示内部命令产生的查询
-L, --log-file=文件名 将会话日志写入文件
-n, --no-readline 禁用增强命令行编辑功能(readline)
-o, --output=FILENAME 将查询结果写入文件(或 |管道)
-q, --quiet 以沉默模式运行(不显示消息,只有查询结果)
-s, --single-step 单步模式 (确认每个查询)
-S, --single-line 单行模式 (一行就是一条 SQL 命令)
输出格式选项 :
-A, --no-align 使用非对齐表格输出模式
-F, --field-separator=字符串
设字段分隔符(缺省:"|")
-H, --html HTML 表格输出模式
-P, --pset=变量[=参数] 设置将变量打印到参数的选项(查阅 \pset 命令)
-R, --record-separator=字符串
设定记录分隔符(缺省:换行符号)
-t, --tuples-only 只打印记录i
-T, --table-attr=文本 设定 HTML 表格标记属性(例如,宽度,边界)
-x, --expanded 打开扩展表格输出
-z, --field-separator-zero
设置字段分隔符为字节0
-0, --record-separator-zero
设置记录分隔符为字节0
联接选项:
-h, --host=主机名 数据库服务器主机或socket目录(缺省:"本地接口")
-p, --port=端口 数据库服务器的端口(缺省:"5432")
-U, --username=用户名 指定数据库用户名(缺省:"Administrator")
-w, --no-password 永远不提示输入口令
-W, --password 强制口令提示 (自动)
更多信息,请在psql中输入"\"(用于内部指令)或者"\help"(用于SQL命令),
或者参考PostgreSQL文档中的psql章节
臭虫报告至<pgsql-bugs@postgresqlorg>
C:\Documentsand Settings\Administrator>
网络问题。
根据查询相关公开信息显示,输入了正确的用户名和密码还是登录不上的原因是网络卡顿,重启服务器即可。
登录页面是响应于单击搜索而显示的单个网页,引擎优化的搜索结果、营销推广、营销电子邮件或在线广告。登陆页面通常会显示定向销售副本,这是广告。
从菜单View→Tool Windows→Database打开数据库工具窗口,如下图所示:
点击Database工具窗口左上角添加按钮“+”,选择数据库类型,这里以MySQL为例,如下图所示:
填写数据库连接的主机名、数据库名、用户名和密码,如下图所示:
点击Test Connection按钮进行测试数据库连接是否正常
下图为连接正常的截图
1、ftp不是用来进入数据库,ftp用户名和密码是用来上传网站用的(比如,你的某个页面做了修改,这个时候就要用到ftp来上传),那就要有ftp,你可以在网上下载,leapftp flashfxp cuteftp,一般就这三种,你在ftp输入用户名和密码,就可以上传网页了(如果你不知道你网站的ip,你可以点击开始-运行-然后输入cmd,在d出的对话框输入ping 你的网站的域名,出来的ip就是你的网站的ip) 2、如果你的网站要更新内容,你就要进你的网站后台,这个网站后台你可以问你的网站管理员或者当初给你做网站的人,他会给你网站后台的地址,还有用户名和密码,你登录进去就可以对网站内容更新了
以上就是关于谁会用postgresql-asp.net怎么连接postgresql(连接远程数据库)-非常感谢全部的内容,包括:谁会用postgresql-asp.net怎么连接postgresql(连接远程数据库)-非常感谢、postgesqlstruts数据连接未释放java、如何设置PostgreSQL允许被远程访问等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)