Home  >  Article  >  Backend Development  >  Does php have to be connected to mysql? Is it possible to use oracle or sql server?

Does php have to be connected to mysql? Is it possible to use oracle or sql server?

WBOY
WBOYOriginal
2016-12-01 01:27:211096browse

Does php have to be connected to mysql? Is it possible to use oracle or sql server?

Reply content:

Does php have to be connected to mysql? Is it possible to use oracle or sql server?

PHP extensions for each database system (MySQL/SQLite/PostgreSQL/Oracle/SQL Server)

Three main MySQL connection methods in PHP (the underlying driver implementation is mysqlnd since 5.4):
mysqli (preferred) pdo_mysql (recommended) mysql (not recommended)
PHP has built-in MySQL driver mysqlnd since 5.4:

<code>php-src/ext/mysqlnd/
php-src/ext/mysql/
php-src/ext/mysqli/
php-src/ext/pdo_mysql/</code>

Relationship: The three sets of PHP programming interfaces for operating MySQL, mysql, mysqli, and pdo_mysql, all rely on PHP’s built-in MySQL driver mysqlnd.

In order to be compatible with a variety of databases, the framework likes to use PDO.
But PHP programs like phpMyAdmin that specialize in managing MySQL use mysqli, which has better support for MySQL.

PHP5.3 enables mysqlnd support like this:

<code>--with-mysql=mysqlnd
--with-mysqli=mysqlnd
--with-pdo-mysql=mysqlnd</code>

Leave blank after PHP5.4 to enable mysqlnd:

by default
<code>--with-mysql
--with-mysqli
--with-pdo-mysql</code>

PHP7 no longer supports --with-mysql.

SQLite:
--with-sqlite3 is enabled by default.
--with-pdo-sqlite is enabled by default and depends on --with-sqlite3. It is recommended to use pdo_sqlite to operate SQLite.

The following extensions are built into the ext directory of the Windows binary package:

<code>php_mysql.dll
php_mysqli.dll
php_pdo_mysql.dll
php_sqlite3.dll
php_pdo_sqlite.dll</code>

Debian/Ubuntu packages: php5-mysqlnd php5-sqlite

PostgreSQL Driver for PHP:

<code>--with-pgsql=DIR
--with-pdo-pgsql=DIR
DIR is the PostgreSQL base install directory or the path to pg_config.</code>

Debian/Ubuntu software package: php5-pgsql
apt-cache depends on php5-pgsql See that it depends on libpq5, the PostgreSQL C client library.
The development package libpq-dev comes with /usr/bin/pg_config.

<code>sudo apt-get install libpq-dev
--with-pgsql=/usr/bin/pg_config
--with-pdo-pgsql=/usr/bin/pg_config</code>

Oracle Driver for PHP:

<code>--with-oci8=DIR
--with-pdo-oci=DIR 此扩展是试验性质的.
DIR defaults to $ORACLE_HOME.</code>

Or install Oracle Instant Client and specify like this:

<code>--with-oci8=shared,instantclient,/usr/lib/oracle/11.2/client/lib
--with-pdo-oci=shared,instantclient,/usr/lib/oracle,11.2</code>

Oracle Instant Client download address (60MB):
http://www.oracle.com/technet...
php_oci8.dll
php_oci8_11g.dll
php_pdo_oci.dll

SQL Server Driver for PHP (php_sqlsrv.dll and php_pdo_sqlsrv.dll, only supports Windows):
http://www.microsoft.com/en-u...

FreeTDS: Driver for connecting SQL Server and Sybase under UNIX/Linux.
--with-pdo-dblib=DIR PDO: DBLIB-DB support. DIR is the FreeTDS home directory
unixODBC is a data source manager, managed by various Data source name created by data driver.
FreeTDS is a free SQL Server/Sybase driver in UNIX/Linux system.
The data source name can be created by unixODBC and the data can be accessed through the name.

unixODBC provides Linux support for ODBC, but it is just an ODBC manager.
To connect to an actual database, you must provide an ODBC driver for this database.
FreeTDS is a free ODBC driver for connecting SQL Server and Sybase under Linux .
Install unixODBC first, then FreeTDS.

iODBC is an implementation of ODBC database connection under UNIX/Linux. Similar projects include unixODBC.

<code>--with-iodbc
--with-pdo-odbc=iODBC,/usr/local
--with-unixODBC
--with-pdo-odbc=unixODBC,/usr/local</code>

Related packages on Ubuntu/Debian:

<code>php5-odbc - ODBC module for php5
php5-sybase - Sybase / MS SQL Server module for php5
/usr/lib/php5/20121212/mssql.so
/usr/lib/php5/20121212/pdo_dblib.so</code>

Of course it must be possible.

php can be said to use any database on the market, but their mysql cooperation is the most efficient. Just like php can use iis or apache. In comparison, apache is more efficient. Later, nginx appeared. It's more efficient down there.

Use pdo to complete the adaptation, no need to worry about any database

Of course it doesn’t have to be linked to mysql

It mainly depends on your needs

PHP has PDO, which has abstracted the specific DB Driver. Of course, other databases can also be used.

PDO is great

It can only be said that MySQL is the most widely used now and it is open source and free. Many other common databases can be used

PHP and MYSQL are golden partners, but you can not only use mysql, you can use PDO to operate various databases

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn