Windows下安装postgresql10的详细步骤解析

本例安装postgresql-10.4-1-windows-x64

postgresql中文社区下载地址:http://www.postgres.cn/download/

postgresql官网下载地址:https://www.postgresql.org/download/

由于网络问题,本例选用的下载地址:https://download.pchome.net/development/database/download-8864.html

postgresql 10 安装时会默认安装pgadmin,所以不需要单独安装pgadmin


postgresql安装完之后,以安装目录E:\Program Files\PostgreSQL\10为例

1、需要先设置环境变量,包括三项:data存放路径,lib以及bin目录

        E:\Program Files\PostgreSQL\10\data;(data的安装目录是可选的,例子是放在安装目录的data文件夹)

        E:\Program Files\PostgreSQL\10\lib;

        E:\Program Files\PostgreSQL\10\bin;


2、初始化数据簇,使用initdb命令。

        先进入data上一级目录(E:\Program Files\PostgreSQL\10)执行命令 initdb -U xx -W -D data

        ps: xx 是超级用户名,设置属于你自己的用户名,如不知道initdb命令可使用 initdb --help查看。
        Windows下安装postgresql10的详细步骤解析_第1张图片

        tips:如果直接使用initdb -U xx -W -D E:\Program Files\PostgreSQL\10\data进行初始化会提示错误“initdb:命令行参数太多”

        执行完之后会提示:

       Windows下安装postgresql10的详细步骤解析_第2张图片

        此时data目录下会出现很多文件夹和文件:

        Windows下安装postgresql10的详细步骤解析_第3张图片

      

3、不要急着启动,修改data目录下postgresql.conf配置,将前面的#去掉即可

        listen_addresses = 'localhost'        # what IP address(es) to listen on;

        port = 5432                # (change requires restart)

        superuser_reserved_connections = 3    # (change requires restart)

        如需打开其他配置,可以根据自己的情况进行更改

        data目录下还有一个名为pg_hba.conf的文件,pg10默认配置好的,使用默认即可,主要是添加许可权限。

        # IPv4 local connections:

        host    all             all             127.0.0.1/32            trust

        该配置的意思是信任host地址为127.0.0.1/32 的所有用户所有数据库访问,pgadmin中的主机名称和地址就只能是127.0.0.1而不能是localhost,如需使用localhost在下面添加host    all             all             localhost            trust,重启服务


4、启动服务 pg_ctl -D data -l logfile start

        如果已经启动,没关系使用pg_ctl -D data -l logfile stop,然后在启动


5、使用服务进行启动, pg_ctl register -N PostgreSQL -D data

        执行后服务中会出现服务名为PostgreSQL服务,如果已经启动服务 pg_ctl -D data -l logfile stop,然后点击服务启动,设置为自动,开机就会启动服务。如果遇到错误,请在当前目录下查找日志文件logfile,本例的日志文件所在目录E:\Program Files\PostgreSQL\10


6、使用pgadmin创建servers时,维护数据库必须是postgres,不是你创建的database,使用sql shell登录也是一样的。因为默认数据库是postgres。如果不填postgres会出现各种稀奇古怪的错误。比如:'utf8' codec can't decode byte 0xd6 in position 0: invalid continuation byte

        Windows下安装postgresql10的详细步骤解析_第4张图片

你可能感兴趣的:(Windows下安装postgresql10的详细步骤解析)