Home >Backend Development >PHP Tutorial >Add PDO-Mysql driver to PHP, add pdo-mysql to php_PHP tutorial

Add PDO-Mysql driver to PHP, add pdo-mysql to php_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:10:00805browse

Add PDO-Mysql driver to PHP, add pdo-mysql to php

1. Problems

The company has an old Linux server with an Apache+MySQL+Php structure. We want to deploy a recent PHP project on it as a test environment.

Since the new project is developed using PHP's YII framework, and the data access of the YII framework uses the PDO interface, it requires the support of the PDO_Mysql driver.

[Note: Currently, PDO has become the main way for PHP to access the database, which is also the design idea of ​​interface-oriented programming.
Higher versions of PHP also have built-in support for PDO, PDO-SQLite, and PDO-Mysql. I believe that most PHP servers now support PDO.
If you are still using the old mysql mysqli method, don't use PDO. 】

2. Ideas

There are only two ways to configure the PDO-Mysql driver for PHP,
One is to recompile, install, and configure PHP, and add the --with-pdo-mysql parameter when configuring,
Another option is to add a pdo-mysql extension based on the existing PHP.

Based on the principle of convenience and speed, we chose to add the pdo-mysql driver on the existing basis.

3. Specific operations

0. Prepare
First of all, you need to know where your current php is installed, assuming it is located at /user/local/php
The directory structure is roughly like this,
bin
etc
include
lib
logs
man

Find these files, which will be used below:
lib/php.ini PHP configuration file is probably familiar to you. It may also be in the etc directory, depending on your specific situation
bin/phpize This is to add new extensions to php without re-editing php
bin/php-config php-config is a script file used to get some PHP-related information, such as which directory PHP is installed in, what the extension library path is, etc. If you have more than one PHP version installed on your system, this parameter is useful to specify which PHP version your extension should be installed on.

In addition, you need to know where your Mysql is installed,
This assumes it is located at /usr/local/mysql


1. Download the source code of pdo-mysql driver
The URL is http://pecl.php.net/package/PDO_MYSQL. From the official website, you can see that this method is no longer encouraged to be used.
Because PDO has been integrated into the PHP kernel, you only need to add a parameter when compiling.

Follow these steps in order:

wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz
tar zxvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql
make
make install


At this time, the pdo-mysql driver has been compiled,
Usually in this directory
/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626
This is where the PHP extension is stored. There may already be many other extensions, such as memcache.so
Check the directory and you should already see the pdo_mysql.so library file.


2. Configure the php.ini file

vi /usr/local/php/lib/php.ini

Find the extentions configuration section, and then add pdo_mysql.so


extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"
extension = "memcache.so"
extension = "pdo_mysql.so"

3. Restart the apache server, even if it is completed
apache/bin/apachectl restart

4. Check phpinfo to see if it works
Write a php file, a simple sentence phpinfo()

Open http://www.aaa.com/test.php
Search pdo
You will see the following prompt, indicating that pdo already supports the mysql driver, and you can operate the mysql database through pdo in php.
PDO drivers sqlite, sqlite2, mysql

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/939719.htmlTechArticleAdd PDO-Mysql driver to PHP, add pdo-mysql to php 1. Problem The company has an old Linux server. Apache+MySQL+Php structure, to deploy a recent PHP project to it, do...
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