Windows 上的静默安装
来自 PostgreSQL wiki
跳转到导航跳转到搜索在 Windows 上静默安装 PostgreSQL。
Windows 上的 PostgreSQL 安装程序使用 Windows Installer (MSI) 技术,因此要进行静默安装,可以使用与任何 MSI 安装程序相同的参数。所有这些都是通过命令行参数完成的,使用用于
- 指定所需的 UI 级别。
- 指定要安装的功能
- 指定要安装的功能属性的默认值。
- 可选地指定用于用户消息的语言。
整个安装过程使用 postgresql-<version>-int.msi 文件完成。主 MSI 文件只是这个文件的包装器,它指定了一些必需的值。
请注意,在执行静默安装时,以下功能不可用
- 验证服务的帐户和密码。如果指定了无效的帐户或密码,安装将几乎完全执行,然后显示错误并取消所有更改,因为身份验证失败。
- 验证数据目录。指定为数据目录的目录必须不存在,如果存在,则必须在执行安装之前为空,如果要执行 initdb。
- 验证 DLL 版本。如果需要执行此操作,您需要手动验证 SSL 库的版本以及 PL 的 DLL 依赖项。
如果您对静默安装有任何疑问,请使用 pgFoundry 页面上提供的 pginstaller-devel 邮件列表。
指定所需的 UI 级别
UI 有以下选项可用
名称 | 命令行 | 描述 |
---|---|---|
正常 | (无) | 与用户交互的正常安装。 |
减少 | /gr | 无用户交互。全屏窗口,带有进度条。 |
基本 | /gb | 无用户交互。只显示一个基本的进度条,没有描述。可以使用命令删除取消按钮 /gb! |
静默 | /gn | 完全静默安装,不向用户显示任何信息。 |
指定要安装的功能
要安装的功能如下指定
ADDLOCAL=característica_1,característica_2...característica_n
ID | 描述 |
---|---|
服务器 | 数据库服务器 |
nls | 自然语言支持 |
postgis(仅限 8.1、8.2 版本) | PostGIS 空间扩展(在 8.3+ 中通过 Stackbuilder 安装) |
pljava(仅限 8.1+ 版本) | PL/Java |
psql | psq1 命令行实用程序 |
pgadmin | pgAdmin III |
jdbc(仅限 8.2 及更早版本) | JDBC 驱动程序(在 8.3+ 中通过 Stackbuilder 安装) |
npgsql(仅限 8.2 及更早版本) | NPgSql .Net 数据提供程序(在 8.3+ 中通过 Stackbuilder 安装) |
psqlodbc(仅限 8.2 及更早版本) | ODBC 驱动程序(在 8.3+ 中通过 Stackbuilder 安装) |
pgoledb(仅限 8.2 及更早版本) | OLE DB 提供程序(在 8.3+ 中通过 Stackbuilder 安装) |
docs(仅限 8.0 版本) | HTML 格式的文档。8.1 版本始终安装 CHM 格式的文档。 |
includefiles | 用于 C/C++ 的包含文件。 |
libfiles | 用于 C/C++ 的库。 |
msvclibs(仅限 8.2 及更早版本) | 用于 MS Visual C++ 的 C/C++ 库(在 8.3 及更高版本中位于 libfiles 功能中) |
pgxs(仅限 8.2 及更早版本) | PGXS |
binfiles | 开发工具和实用程序,例如 ecpg。 |
为属性指定值
当使用非“正常”的 UI 级别时,属性值是可编辑的。当使用“正常”的 UI 级别时,将使用安装程序对话框中显示的默认值。请注意,字符串参数可能需要在文本周围使用单引号(')。
ID | 默认值 | 描述 |
---|---|---|
INTERNALLAUNCH | 0 | 必须设置为 1 才能使用 MSI 文件。 |
DOSERVICE | 1 | 将 PostgreSQL 安装为服务。 |
DOINITDB | 1 | 在已安装的系统上运行 initdb。仅在将 PostgreSQL 安装为服务时才可用。此功能在 NT4 中不可用。 |
SERVICEDOMAIN | . | 运行 PostgreSQL 服务的用户的域名。对于本地用户,请使用计算机名(%COMPUTERNAME%)。仅在将 PostgreSQL 安装为服务时才使用。 |
SERVICEACCOUNT | postgres | 运行 PostgreSQL 服务的用户名,不包括域名。仅在将 PostgreSQL 安装为服务时才使用。 |
SERVICEPASSWORD | 运行 PostgreSQL 服务的帐户的密码。帐户必须预先存在并具有访问密码。帐户必须具有此访问密码;安装程序不会修改它。仅在将 PostgreSQL 安装为服务时才使用。 | |
CREATESERVICEUSER(仅限 8.1+) | 0 | 如果设置为 1,则将在安装期间创建服务用户,使用指定的用户名和密码。 |
SERVICENAME | PostgreSQL Database Server <ver> | 在服务管理器的“服务”中显示的服务名称。它必须在系统中是唯一的。 |
SUPERUSER | postgres | 数据库中默认用户的帐户名。仅在运行 initdb 时使用 |
SUPERPASSWORD | 数据库中默认用户的密码。仅在运行 initdb 时使用。 | |
LOCALE | C | 数据库的区域设置。仅在运行 initdb 时使用。 |
ENCODING | SQL_ASCII | 数据库的编码。仅在运行 initdb 时使用。 |
LISTENPORT | 5432 | 用于接受传入连接的 TCP 端口。仅在运行 initdb 时使用。 |
PERMITREMOTE | 允许来自远程计算机的连接(设置为 1 启用)。仅在运行 initdb 时使用。 | |
PL_PGSQL | 1 | 安装 PL/PGSQL 语言以用于存储函数和过程。 |
PL_PERL | 安装 PL/PERL 语言以用于存储函数和过程。确保 perl158.dll 文件在系统路径 (PATH) 中可用。 | |
PL_PERLU | 安装 PL/PERL untrusted 语言以用于存储函数和过程。确保 perl158.dll 文件在系统路径 (PATH) 中可用。 | |
PL_TCL | 安装 PL/TCL 语言以用于存储函数和过程。确保 tcl84.dll 文件在系统路径 (PATH) 中可用。 | |
PL_TCLU | 安装 PL/TCL untrusted 语言以用于存储函数和过程。确保 tcl184.dll 文件在系统路径 (PATH) 中可用。 | |
PL_PYTHONU | 安装 PL/PYTHON untrusted 语言以用于存储函数和过程。确保 python23.dll 文件在系统路径 (PATH) 中可用。 | |
PL_JAVA(仅限 8.1) | 安装 PL/JAVA trusted 和 untrusted 语言以用于存储函数和过程。确保在系统路径 (PATH) 中可用正确的 JRE。 | |
NOSHORTCUTS(仅限 8.1) | 0 | 不在 Windows 开始菜单中安装快捷方式。 |