使用 symfony 从 postgreSQL 创建数据库
creating database from postgreSQL with symfony
我正在使用 mapbender3,它是在我本地机器上用 symfony2 开发的。我被要求将应用程序连接到远程 potgreSQL 服务器。以下是parameters.yml文件中的配置。
parameters:
database_driver: pdo_pgsql
database_host: 192.168.3.100
database_port: 5434
database_name: idc_core
database_path: ~
database_user: *******
database_password: *******
mailer_transport: smtp
mailer_host: localhost
mailer_user: ~
mailer_password: ~
但是当我运行命令时:
php app/console doctrine:database:create
我不断收到以下错误
could not create database for connection named "idc_core"
cound not find driver
我在 windows 7 上使用 WAMP 服务器,驱动程序 pdo_pgsql 在我的本地计算机上显示为活动 运行ning。
我检查了 phpinfo(),它显示 pdo_pgsql 已启用,但是当我 运行 php -m
在命令行中查看编译的模块,
我可以看到 PDO、pdo_mysql 和 pdo_sqlite 但不是 pdo_pgsql
务必在app/config/database.php
中配置'default'
键
对于 postgres,这将是 'default' => 'postgres',
如果您收到 [PDOException] could not find driver
错误,请检查您是否安装了正确的 PHP 扩展。您需要安装并启用 pdo_pgsql.so
和 pgsql.so
。有关如何执行此操作的说明因操作系统而异。
对于 Windows,pgsql
扩展应该与官方 PHP 发行版一起预下载。只需编辑 php.ini
并取消注释行 extension=pdo_pgsql.so
和 extension=pgsql.so
此外,在 php.ini
中,确保 extension_dir
设置为正确的目录。它应该是 extensions
或 ext
或 PHP 安装目录中的类似文件夹。
最后,将libpq.dll
从C:\wamp\bin\php\php5.*\
复制到C:\wamp\bin\apache*\bin
,并通过WampServer接口重启所有服务。
如果仍然出现异常,您可能需要将 postgres \bin
目录添加到 PATH
:
- 系统属性 -> 高级选项卡 -> 环境变量
- 在 window 下半部分的 'System variables' 组中,滚动并找到
PATH
条目。
- Select 然后点击编辑
- 在现有条目的末尾,输入您的 postgres bin 目录的完整路径。 bin 文件夹应位于 postgres 安装目录的根目录中。
- 重新启动所有打开的命令提示符,或者为了确定,重新启动您的计算机。
这应该可以解决任何问题。有关详细信息,请参阅:
- http://php.net/manual/en/install.windows.extensions.php
- http://webcheatsheet.com/php/install_and_configure.php#extsetup
来源:
您应该将 pdo_pgsql 扩展添加到 [=13= 中 php 的 CLI 配置中]
yourPhpDirectory/cli/php.ini
CLI 使用此配置在命令行中工作,而不是用于 apache 的配置。这就是为什么 phpinfo();
显示 pdo_pgsql 而 php -m
不显示的原因。同样在 Windows OS 下,您应该重新启动命令行工具以查看任何配置更改后的差异。
在 php.ini
(用于 CLI 的那个)中启用扩展 php_pdo_pgsql
和 php_pgsql
:
extension=php_pdo_pgsql.dll
extension=php_pgsql.dll
通过数据库管理工具(如 Adminer)进行测试,确保远程服务器的 "Port" 和 "Login Credentials" 正确。
我正在使用 mapbender3,它是在我本地机器上用 symfony2 开发的。我被要求将应用程序连接到远程 potgreSQL 服务器。以下是parameters.yml文件中的配置。
parameters:
database_driver: pdo_pgsql
database_host: 192.168.3.100
database_port: 5434
database_name: idc_core
database_path: ~
database_user: *******
database_password: *******
mailer_transport: smtp
mailer_host: localhost
mailer_user: ~
mailer_password: ~
但是当我运行命令时:
php app/console doctrine:database:create
我不断收到以下错误
could not create database for connection named "idc_core"
cound not find driver
我在 windows 7 上使用 WAMP 服务器,驱动程序 pdo_pgsql 在我的本地计算机上显示为活动 运行ning。
我检查了 phpinfo(),它显示 pdo_pgsql 已启用,但是当我 运行 php -m
在命令行中查看编译的模块,
我可以看到 PDO、pdo_mysql 和 pdo_sqlite 但不是 pdo_pgsql
务必在app/config/database.php
'default'
键
对于 postgres,这将是 'default' => 'postgres',
如果您收到 [PDOException] could not find driver
错误,请检查您是否安装了正确的 PHP 扩展。您需要安装并启用 pdo_pgsql.so
和 pgsql.so
。有关如何执行此操作的说明因操作系统而异。
对于 Windows,pgsql
扩展应该与官方 PHP 发行版一起预下载。只需编辑 php.ini
并取消注释行 extension=pdo_pgsql.so
和 extension=pgsql.so
此外,在 php.ini
中,确保 extension_dir
设置为正确的目录。它应该是 extensions
或 ext
或 PHP 安装目录中的类似文件夹。
最后,将libpq.dll
从C:\wamp\bin\php\php5.*\
复制到C:\wamp\bin\apache*\bin
,并通过WampServer接口重启所有服务。
如果仍然出现异常,您可能需要将 postgres \bin
目录添加到 PATH
:
- 系统属性 -> 高级选项卡 -> 环境变量
- 在 window 下半部分的 'System variables' 组中,滚动并找到
PATH
条目。 - Select 然后点击编辑
- 在现有条目的末尾,输入您的 postgres bin 目录的完整路径。 bin 文件夹应位于 postgres 安装目录的根目录中。
- 重新启动所有打开的命令提示符,或者为了确定,重新启动您的计算机。
这应该可以解决任何问题。有关详细信息,请参阅:
- http://php.net/manual/en/install.windows.extensions.php
- http://webcheatsheet.com/php/install_and_configure.php#extsetup
来源:
您应该将 pdo_pgsql 扩展添加到 [=13= 中 php 的 CLI 配置中]
yourPhpDirectory/cli/php.ini
CLI 使用此配置在命令行中工作,而不是用于 apache 的配置。这就是为什么 phpinfo();
显示 pdo_pgsql 而 php -m
不显示的原因。同样在 Windows OS 下,您应该重新启动命令行工具以查看任何配置更改后的差异。
在
php.ini
(用于 CLI 的那个)中启用扩展php_pdo_pgsql
和php_pgsql
:extension=php_pdo_pgsql.dll extension=php_pgsql.dll
通过数据库管理工具(如 Adminer)进行测试,确保远程服务器的 "Port" 和 "Login Credentials" 正确。