在没有安装的情况下在windows中启动postgresql和pgadmin

时间:2014-10-18 16:17:39

标签: postgresql

如何在没有安装的情况下在Windows中启动PostgreSQL和pgAdmin III。我在系统中没有管理员权限。所以我需要在不安装的情况下启动应用程序。我怎么能这样做?

3 个答案:

答案 0 :(得分:38)

  1. https://www.enterprisedb.com/products-services-training/pgbindownload
  2. 下载ZIP文件
  3. 将存档解压缩到您选择的目录中(创建存档使其解压缩,它将创建一个目录pgsql,其中包含其他所有内容)
  4. 运行initdb(可以在子目录pgsql\bin中找到)

    initdb -D c:\Users\Arthur\pgdata -U postgres -W -E UTF8 -A scram-sha-256
    

    这将在c:\Users\Arthur\pgdata中创建postgres“数据目录”(又名“群集”)。您需要确保运行此命令的用户对该目录具有完全读/写权限。

    -U postgres创建超级用户为postgres-W将提示您输入超级用户的密码,-E UTF8将使用UTF-8编码创建数据库, -A md5启用密码验证。

  5. 要启动Postgres,请运行:

    pg_ctl -D c:\Users\Arthur\pgdata start
    

    (!)作为运行initdb的用户完成,以避免访问数据目录时出现任何问题。

  6. 要关闭Postgres,请运行:

    pg_ctl -D c:\Users\Arthur\pgdata stop
    
  7. psql.exe(命令行客户端)位于bin目录中。从Postgres 9.6开始,pgAdmin可执行文件pgAdmin4.exe位于子目录"pgAdmin 4\bin"中。

答案 1 :(得分:0)

谢谢。这对我有用。但是,启动psql.exe时出现错误

错误是“ psql:FATAL:角色[用户]不存在。”

要解决此问题,我按照以下步骤操作:

  1. 位于同一文件夹路径(具有initdb.exe的文件夹),即source-folder / pgsql / bin
  2. 运行“ psql -U postgres”。这将要求输入密码。
  3. 现在输入在postgres初始化期间设置的密码。这将打开psql命令提示符。

希望这会有所帮助..:)

答案 2 :(得分:0)

我尝试了上述方法的正常工作,但是当我尝试通过JDBC连接它时,我曾经获得

  

“不支持认证类型10。检查是否已将pg_hba.conf文件配置为包括客户端的IP地址或   子网,并且该子网使用的是   驱动程序。”

发生这种情况是因为 scram-sha-256 有一些问题(refer here),我无法深入了解,所以我将其更改为md5 ,一切开始顺利进行。希望对您有帮助

。\ initdb -D D:\ database \ dbdata -U postgres -W -E UTF8 -A md5