Home > Article > Backend Development > 安装php时,--with-mysql指定的是哪个路径呢?
mysql是用rpm安装的,装完以后文件分散在好几个目录,然后就不知道安装php的时候应该指定哪个目录了,求教。
下面是rpm -ql mysql-community-server
的结果。
<code>/etc/logrotate.d/mysql /etc/my.cnf /etc/my.cnf.d /usr/bin/innochecksum /usr/bin/lz4_decompress /usr/bin/my_print_defaults /usr/bin/myisam_ftdump /usr/bin/myisamchk /usr/bin/myisamlog /usr/bin/myisampack /usr/bin/mysql_install_db /usr/bin/mysql_plugin /usr/bin/mysql_secure_installation /usr/bin/mysql_ssl_rsa_setup /usr/bin/mysql_tzinfo_to_sql /usr/bin/mysql_upgrade /usr/bin/mysqld_pre_systemd /usr/bin/mysqldumpslow /usr/bin/perror /usr/bin/replace /usr/bin/resolve_stack_dump /usr/bin/resolveip /usr/bin/zlib_decompress /usr/lib/systemd/system/mysqld.service /usr/lib/tmpfiles.d/mysql.conf /usr/lib64/mysql/mecab /usr/lib64/mysql/mecab/dic /usr/lib64/mysql/mecab/dic/ipadic_euc-jp /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/char.bin /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/dicrc /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/left-id.def /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/matrix.bin /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/pos-id.def /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/rewrite.def /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/right-id.def /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/sys.dic /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/unk.dic /usr/lib64/mysql/mecab/dic/ipadic_sjis /usr/lib64/mysql/mecab/dic/ipadic_sjis/char.bin /usr/lib64/mysql/mecab/dic/ipadic_sjis/dicrc /usr/lib64/mysql/mecab/dic/ipadic_sjis/left-id.def /usr/lib64/mysql/mecab/dic/ipadic_sjis/matrix.bin /usr/lib64/mysql/mecab/dic/ipadic_sjis/pos-id.def /usr/lib64/mysql/mecab/dic/ipadic_sjis/rewrite.def /usr/lib64/mysql/mecab/dic/ipadic_sjis/right-id.def /usr/lib64/mysql/mecab/dic/ipadic_sjis/sys.dic /usr/lib64/mysql/mecab/dic/ipadic_sjis/unk.dic /usr/lib64/mysql/mecab/dic/ipadic_utf-8 /usr/lib64/mysql/mecab/dic/ipadic_utf-8/char.bin /usr/lib64/mysql/mecab/dic/ipadic_utf-8/dicrc /usr/lib64/mysql/mecab/dic/ipadic_utf-8/left-id.def /usr/lib64/mysql/mecab/dic/ipadic_utf-8/matrix.bin /usr/lib64/mysql/mecab/dic/ipadic_utf-8/pos-id.def /usr/lib64/mysql/mecab/dic/ipadic_utf-8/rewrite.def /usr/lib64/mysql/mecab/dic/ipadic_utf-8/right-id.def /usr/lib64/mysql/mecab/dic/ipadic_utf-8/sys.dic /usr/lib64/mysql/mecab/dic/ipadic_utf-8/unk.dic /usr/lib64/mysql/mecab/etc /usr/lib64/mysql/mecab/etc/mecabrc /usr/lib64/mysql/plugin /usr/lib64/mysql/plugin/adt_null.so /usr/lib64/mysql/plugin/auth_socket.so /usr/lib64/mysql/plugin/debug /usr/lib64/mysql/plugin/debug/adt_null.so /usr/lib64/mysql/plugin/debug/auth_socket.so /usr/lib64/mysql/plugin/debug/ha_example.so /usr/lib64/mysql/plugin/debug/innodb_engine.so /usr/lib64/mysql/plugin/debug/keyring_file.so /usr/lib64/mysql/plugin/debug/libmemcached.so /usr/lib64/mysql/plugin/debug/libpluginmecab.so /usr/lib64/mysql/plugin/debug/locking_service.so /usr/lib64/mysql/plugin/debug/mypluglib.so /usr/lib64/mysql/plugin/debug/mysql_no_login.so /usr/lib64/mysql/plugin/debug/mysqlx.so /usr/lib64/mysql/plugin/debug/rewrite_example.so /usr/lib64/mysql/plugin/debug/rewriter.so /usr/lib64/mysql/plugin/debug/semisync_master.so /usr/lib64/mysql/plugin/debug/semisync_slave.so /usr/lib64/mysql/plugin/debug/validate_password.so /usr/lib64/mysql/plugin/debug/version_token.so /usr/lib64/mysql/plugin/ha_example.so /usr/lib64/mysql/plugin/innodb_engine.so /usr/lib64/mysql/plugin/keyring_file.so /usr/lib64/mysql/plugin/libmemcached.so /usr/lib64/mysql/plugin/libpluginmecab.so /usr/lib64/mysql/plugin/locking_service.so /usr/lib64/mysql/plugin/mypluglib.so /usr/lib64/mysql/plugin/mysql_no_login.so /usr/lib64/mysql/plugin/mysqlx.so /usr/lib64/mysql/plugin/rewrite_example.so /usr/lib64/mysql/plugin/rewriter.so /usr/lib64/mysql/plugin/semisync_master.so /usr/lib64/mysql/plugin/semisync_slave.so /usr/lib64/mysql/plugin/validate_password.so /usr/lib64/mysql/plugin/version_token.so /usr/sbin/mysqld /usr/sbin/mysqld-debug /usr/share/doc/mysql-community-server-5.7.12 /usr/share/doc/mysql-community-server-5.7.12/COPYING /usr/share/doc/mysql-community-server-5.7.12/ChangeLog /usr/share/doc/mysql-community-server-5.7.12/INFO_BIN /usr/share/doc/mysql-community-server-5.7.12/INFO_SRC /usr/share/doc/mysql-community-server-5.7.12/README /usr/share/doc/mysql-community-server-5.7.12/my-default.cnf /usr/share/man/man1/innochecksum.1.gz /usr/share/man/man1/lz4_decompress.1.gz /usr/share/man/man1/my_print_defaults.1.gz /usr/share/man/man1/myisam_ftdump.1.gz /usr/share/man/man1/myisamchk.1.gz /usr/share/man/man1/myisamlog.1.gz /usr/share/man/man1/myisampack.1.gz /usr/share/man/man1/mysql.server.1.gz /usr/share/man/man1/mysql_install_db.1.gz /usr/share/man/man1/mysql_plugin.1.gz /usr/share/man/man1/mysql_secure_installation.1.gz /usr/share/man/man1/mysql_ssl_rsa_setup.1.gz /usr/share/man/man1/mysql_tzinfo_to_sql.1.gz /usr/share/man/man1/mysql_upgrade.1.gz /usr/share/man/man1/mysqld_multi.1.gz /usr/share/man/man1/mysqld_safe.1.gz /usr/share/man/man1/mysqldumpslow.1.gz /usr/share/man/man1/mysqlman.1.gz /usr/share/man/man1/perror.1.gz /usr/share/man/man1/replace.1.gz /usr/share/man/man1/resolve_stack_dump.1.gz /usr/share/man/man1/resolveip.1.gz /usr/share/man/man1/zlib_decompress.1.gz /usr/share/man/man8/mysqld.8.gz /usr/share/mysql/dictionary.txt /usr/share/mysql/fill_help_tables.sql /usr/share/mysql/innodb_memcached_config.sql /usr/share/mysql/install_rewriter.sql /usr/share/mysql/magic /usr/share/mysql/my-default.cnf /usr/share/mysql/mysql-log-rotate /usr/share/mysql/mysql_security_commands.sql /usr/share/mysql/mysql_sys_schema.sql /usr/share/mysql/mysql_system_tables.sql /usr/share/mysql/mysql_system_tables_data.sql /usr/share/mysql/mysql_test_data_timezone.sql /usr/share/mysql/uninstall_rewriter.sql /var/lib/mysql /var/lib/mysql-files /var/lib/mysql-keyring /var/run/mysqld </code>
mysql是用rpm安装的,装完以后文件分散在好几个目录,然后就不知道安装php的时候应该指定哪个目录了,求教。
下面是rpm -ql mysql-community-server
的结果。
<code>/etc/logrotate.d/mysql /etc/my.cnf /etc/my.cnf.d /usr/bin/innochecksum /usr/bin/lz4_decompress /usr/bin/my_print_defaults /usr/bin/myisam_ftdump /usr/bin/myisamchk /usr/bin/myisamlog /usr/bin/myisampack /usr/bin/mysql_install_db /usr/bin/mysql_plugin /usr/bin/mysql_secure_installation /usr/bin/mysql_ssl_rsa_setup /usr/bin/mysql_tzinfo_to_sql /usr/bin/mysql_upgrade /usr/bin/mysqld_pre_systemd /usr/bin/mysqldumpslow /usr/bin/perror /usr/bin/replace /usr/bin/resolve_stack_dump /usr/bin/resolveip /usr/bin/zlib_decompress /usr/lib/systemd/system/mysqld.service /usr/lib/tmpfiles.d/mysql.conf /usr/lib64/mysql/mecab /usr/lib64/mysql/mecab/dic /usr/lib64/mysql/mecab/dic/ipadic_euc-jp /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/char.bin /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/dicrc /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/left-id.def /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/matrix.bin /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/pos-id.def /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/rewrite.def /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/right-id.def /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/sys.dic /usr/lib64/mysql/mecab/dic/ipadic_euc-jp/unk.dic /usr/lib64/mysql/mecab/dic/ipadic_sjis /usr/lib64/mysql/mecab/dic/ipadic_sjis/char.bin /usr/lib64/mysql/mecab/dic/ipadic_sjis/dicrc /usr/lib64/mysql/mecab/dic/ipadic_sjis/left-id.def /usr/lib64/mysql/mecab/dic/ipadic_sjis/matrix.bin /usr/lib64/mysql/mecab/dic/ipadic_sjis/pos-id.def /usr/lib64/mysql/mecab/dic/ipadic_sjis/rewrite.def /usr/lib64/mysql/mecab/dic/ipadic_sjis/right-id.def /usr/lib64/mysql/mecab/dic/ipadic_sjis/sys.dic /usr/lib64/mysql/mecab/dic/ipadic_sjis/unk.dic /usr/lib64/mysql/mecab/dic/ipadic_utf-8 /usr/lib64/mysql/mecab/dic/ipadic_utf-8/char.bin /usr/lib64/mysql/mecab/dic/ipadic_utf-8/dicrc /usr/lib64/mysql/mecab/dic/ipadic_utf-8/left-id.def /usr/lib64/mysql/mecab/dic/ipadic_utf-8/matrix.bin /usr/lib64/mysql/mecab/dic/ipadic_utf-8/pos-id.def /usr/lib64/mysql/mecab/dic/ipadic_utf-8/rewrite.def /usr/lib64/mysql/mecab/dic/ipadic_utf-8/right-id.def /usr/lib64/mysql/mecab/dic/ipadic_utf-8/sys.dic /usr/lib64/mysql/mecab/dic/ipadic_utf-8/unk.dic /usr/lib64/mysql/mecab/etc /usr/lib64/mysql/mecab/etc/mecabrc /usr/lib64/mysql/plugin /usr/lib64/mysql/plugin/adt_null.so /usr/lib64/mysql/plugin/auth_socket.so /usr/lib64/mysql/plugin/debug /usr/lib64/mysql/plugin/debug/adt_null.so /usr/lib64/mysql/plugin/debug/auth_socket.so /usr/lib64/mysql/plugin/debug/ha_example.so /usr/lib64/mysql/plugin/debug/innodb_engine.so /usr/lib64/mysql/plugin/debug/keyring_file.so /usr/lib64/mysql/plugin/debug/libmemcached.so /usr/lib64/mysql/plugin/debug/libpluginmecab.so /usr/lib64/mysql/plugin/debug/locking_service.so /usr/lib64/mysql/plugin/debug/mypluglib.so /usr/lib64/mysql/plugin/debug/mysql_no_login.so /usr/lib64/mysql/plugin/debug/mysqlx.so /usr/lib64/mysql/plugin/debug/rewrite_example.so /usr/lib64/mysql/plugin/debug/rewriter.so /usr/lib64/mysql/plugin/debug/semisync_master.so /usr/lib64/mysql/plugin/debug/semisync_slave.so /usr/lib64/mysql/plugin/debug/validate_password.so /usr/lib64/mysql/plugin/debug/version_token.so /usr/lib64/mysql/plugin/ha_example.so /usr/lib64/mysql/plugin/innodb_engine.so /usr/lib64/mysql/plugin/keyring_file.so /usr/lib64/mysql/plugin/libmemcached.so /usr/lib64/mysql/plugin/libpluginmecab.so /usr/lib64/mysql/plugin/locking_service.so /usr/lib64/mysql/plugin/mypluglib.so /usr/lib64/mysql/plugin/mysql_no_login.so /usr/lib64/mysql/plugin/mysqlx.so /usr/lib64/mysql/plugin/rewrite_example.so /usr/lib64/mysql/plugin/rewriter.so /usr/lib64/mysql/plugin/semisync_master.so /usr/lib64/mysql/plugin/semisync_slave.so /usr/lib64/mysql/plugin/validate_password.so /usr/lib64/mysql/plugin/version_token.so /usr/sbin/mysqld /usr/sbin/mysqld-debug /usr/share/doc/mysql-community-server-5.7.12 /usr/share/doc/mysql-community-server-5.7.12/COPYING /usr/share/doc/mysql-community-server-5.7.12/ChangeLog /usr/share/doc/mysql-community-server-5.7.12/INFO_BIN /usr/share/doc/mysql-community-server-5.7.12/INFO_SRC /usr/share/doc/mysql-community-server-5.7.12/README /usr/share/doc/mysql-community-server-5.7.12/my-default.cnf /usr/share/man/man1/innochecksum.1.gz /usr/share/man/man1/lz4_decompress.1.gz /usr/share/man/man1/my_print_defaults.1.gz /usr/share/man/man1/myisam_ftdump.1.gz /usr/share/man/man1/myisamchk.1.gz /usr/share/man/man1/myisamlog.1.gz /usr/share/man/man1/myisampack.1.gz /usr/share/man/man1/mysql.server.1.gz /usr/share/man/man1/mysql_install_db.1.gz /usr/share/man/man1/mysql_plugin.1.gz /usr/share/man/man1/mysql_secure_installation.1.gz /usr/share/man/man1/mysql_ssl_rsa_setup.1.gz /usr/share/man/man1/mysql_tzinfo_to_sql.1.gz /usr/share/man/man1/mysql_upgrade.1.gz /usr/share/man/man1/mysqld_multi.1.gz /usr/share/man/man1/mysqld_safe.1.gz /usr/share/man/man1/mysqldumpslow.1.gz /usr/share/man/man1/mysqlman.1.gz /usr/share/man/man1/perror.1.gz /usr/share/man/man1/replace.1.gz /usr/share/man/man1/resolve_stack_dump.1.gz /usr/share/man/man1/resolveip.1.gz /usr/share/man/man1/zlib_decompress.1.gz /usr/share/man/man8/mysqld.8.gz /usr/share/mysql/dictionary.txt /usr/share/mysql/fill_help_tables.sql /usr/share/mysql/innodb_memcached_config.sql /usr/share/mysql/install_rewriter.sql /usr/share/mysql/magic /usr/share/mysql/my-default.cnf /usr/share/mysql/mysql-log-rotate /usr/share/mysql/mysql_security_commands.sql /usr/share/mysql/mysql_sys_schema.sql /usr/share/mysql/mysql_system_tables.sql /usr/share/mysql/mysql_system_tables_data.sql /usr/share/mysql/mysql_test_data_timezone.sql /usr/share/mysql/uninstall_rewriter.sql /var/lib/mysql /var/lib/mysql-files /var/lib/mysql-keyring /var/run/mysqld </code>
貌似你要编译php? 如果是, 往下看.
cd
./configure --help |grep mysql # 先看看这个参数是干嘛的
通常在编译的时候指定的相关软件的路径, 都是源码路径.
我的建议是: php 相关的软件/插件, 要么都编译, 要么都rpm.
如果你的PHP版本大于5.3,可以试试这个:--with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
PHP针对各数据库系统对应的扩展
PHP中三种主要的MySQL连接方式(5.4开始驱动底层实现都是mysqlnd):
http://php.net/manual/zh/mysqli.overview.php
mysqli(首选) pdo_mysql(建议) mysql(不建议)
PHP从5.4开始内置了MySQL驱动mysqlnd:
php-src/ext/mysqlnd/
php-src/ext/mysql/
php-src/ext/mysqli/
php-src/ext/pdo_mysql/
关系:mysql,mysqli,pdo_mysql这3套PHP操作MySQL的编程接口底层都依赖PHP内置的MySQL驱动mysqlnd.
PHP5.3这样启用mysqlnd支持:
--with-mysql=mysqlnd
--with-mysqli=mysqlnd
--with-pdo-mysql=mysqlnd
PHP5.4后留空则默认启用mysqlnd:
--with-mysql
--with-mysqli
--with-pdo-mysql
PHP7开始不再支持--with-mysql.
--with-pdo-sqlite 默认启用,推荐采用pdo_sqlite来操作SQLite.
--with-sqlite3 默认启用,此扩展是试验性质的.
Windows二进制包ext目录下内置了下面几个扩展:
php_mysql.dll
php_mysqli.dll
php_pdo_mysql.dll
php_sqlite3.dll
php_pdo_sqlite.dll
Debian/Ubuntu软件包: php5-mysqlnd php5-sqlite
PostgreSQL Driver for PHP:
--with-pgsql=DIR
--with-pdo-pgsql=DIR
DIR is the PostgreSQL base install directory or the path to pg_config.
Debian/Ubuntu软件包: php5-pgsql
apt-cache depends php5-pgsql 看到其依赖libpq5这个PostgreSQL的C客户端库.
开发包libpq-dev里带了/usr/bin/pg_config.
sudo apt-get install libpq-dev
--with-pgsql=/usr/bin/pg_config
--with-pdo-pgsql=/usr/bin/pg_config
Oracle Driver for PHP:
--with-oci8=DIR
--with-pdo-oci=DIR 此扩展是试验性质的.
DIR defaults to $ORACLE_HOME.
或者安装Oracle Instant Client然后这样指定:
--with-oci8=shared,instantclient,/usr/lib/oracle/11.2/client/lib
--with-pdo-oci=shared,instantclient,/usr/lib/oracle,11.2
Oracle Instant Client下载地址(60MB):
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
php_oci8.dll
php_oci8_11g.dll
php_pdo_oci.dll