postgresql相关常见问题

本文提供了解决PgSQL安装后无法登录的问题方案,并详细介绍了免安装版PgSQL的数据库初始化步骤,包括服务注册与超级管理员账号的创建过程。同时,针对使用Navicat Premium时可能出现的错误给出了升级建议。

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

1、postgresql安装后,登录不了

原因可能是"主机名或IP地址"不能写ip,只能写主机名,要让ip能访问可以follow下面步骤:

在安装目录下data文件夹下,打开pg_hba.conf文件,在# IPv4 local connections:下面加一行
host    all             all        10.17.36.109/16          password
其中后面那个16表示ip的前两位被固定,24是前三位被固定,32是四位都被固定

修改完后在系统服务里重启postgresql

2、免安装版pgsql,解压后初始化数据库步骤(测试版本postgresql-9.6.3-1-windows-x64-binaries.zip)

将下面的命令保存进文件install.bat,放进bin目录下并执行,命令做的事情包括初始化数据库/创建服务并启动/初始化超级管理员账号postgres/创建了一个账号root
@echo off
initdb.exe -D ../data -E UTF8 --locale=C -U postgres
echo "begin to reguster the postgresql service!!!"
set CURRENT_DIR=%cd%
echo %CURRENT_DIR%\..\data
if not exist "%CURRENT_DIR%\..\data" (echo no data exist! 
                                       goto :myerr)
cd "%CURRENT_DIR%\..\data"
set data_path=%cd%
cd "%CURRENT_DIR%"
echo "use data dir %data_path%"
rem register the postgresql service
pg_ctl register -N "pgsql Service" -D "%data_path%" -w
rem  register complete
net start "pgsql Service"
ping 127.0.0.1 -n 10 1>nul
set PGPASSWORD=12345
psql -Upostgres -h127.0.0.1 -p 5432 -c "CREATE ROLE root LOGIN ENCRYPTED PASSWORD '23456' NOSUPERUSER NOINHERIT CREATEDB NOCREATEROLE NOREPLICATION;"  postgres
psql -Upostgres -h127.0.0.1 -p 5432 -c "alter user postgres with password '12345';" postgres
goto :myexit
:myerr
echo fail
:myexit

完成后进入data文件夹,

修改postgresql.conf文件

#listen_addresses = 'localhost'  改为 listen_addresses = '*'

#port = 5432 改为 port = 5432

修改pg_hba.conf文件

# IPv4 local connections:下改为

host    all             all             0.0.0.0/0               md5

注释掉# IPv6 local connections:下的配置

3、Navicat Premium登录后创建数据库出现下面错误,升级Navicat Premium即可


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值