PHP中PDO_MYSQL擴充安裝的2種方法_PHP教程

來源:互聯網
上載者:User

PHP中PDO_MYSQL擴充安裝的2種方法


  方法一

  看到CakePHP文檔要求安裝pdo_mysql擴充,於是就嘗試安裝了一下。

  這裡我的系統是CentOS 6.0。如果你的系統是其他版本的Linux/Unix,可以參考。如果你的系統是Windows的,抱歉,以下內容不適合你,請移步。

  首先是下載pdo_mysql擴充的源碼包。下載頁面在這裡:http://pecl.php.net/package/PDO_MYSQL。可以先下載瞭然後用FTP傳到伺服器。

  我是在複製了下載地址以後使用wget直接下載到伺服器端的。

  # wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz

  然後是解壓縮。

  # tar -zxvf PDO_MYSQL-1.0.2.tgz

  進入解壓後的目錄,然後執行phpize。

  # /usr/local/php/bin/phpize

  Configuring for:

  PHP Api Version: 20100412

  Zend Module Api No: 20100525

  Zend Extension Api No: 220100525

  下面產生makefile。後面的兩個參數必須要添加,一開始我沒有添加,結果分別都提示找不到php-config和mysql的header檔案。

  # ./configure –with-php-config=/usr/local/php/bin/php-config –with-pdo-mysql=/usr/local/mysql

  在make之前還要做一個mysql的header檔案的軟串連。因為mysql安裝的時候指定了目錄,不做軟串連的話,還是找不到header檔案。

  # ln -s /usr/local/mysql/include/* /usr/local/include/

  然後make和make install。

  # make

  # make install

  之後會提示如下,意思是擴充被安裝到了如下目錄裡。

  Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20100525/

  為了方便,我把pdo_mysql.so檔案移動到extensions目錄下。

  # mv /usr/local/php/lib/php/extensions/no-debug-zts-20100525/pdo_mysql.so /usr/local/php/lib/php/extensions/

  隨後就可以修改php.ini檔案了。

  找到; extension_dir = “./”這一行,去掉注釋,並修改路徑。

  extension_dir = “/usr/local/php/lib/php/extensions/”

  這裡經過我測試,發現php只會從該目錄尋找擴充so,而並不尋找該目錄下的子目錄。所以之前我為了統一管理,把so檔案都移動到該目錄下。

  找到; extension=php_pdo_mysql.dll這一行,去掉注釋,並修改後面的檔案名稱。

  extension=pdo_mysql.so

  檔案名稱不太一樣,這裡要把php_首碼去掉,否則找不到檔案。後面的dll是windows下的檔案名稱,我們改成so。

  最後重啟apache就可以了。用phpinfo()查看發現已經生效了。

  方法二

  PDO_MYSQL以下操作都在Linux 系統下操作

  1、下載 檔案 或者 進入 在PHP源碼包中進入ext/pdo_mysql

  http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz

  2、解壓檔案

  tar zxvf PDO_MYSQL-1.0.2.tgz

  3、配置和編譯檔案

  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

  註: 我的PHP安裝在 : /usr/local/php/ mysql 安裝在 : /usr/local/mysql 編譯的時候注意你自己的安裝目錄在哪裡

  3、安裝到PHP配置下

  把這個記住,然後開啟 php.ini檔案,

  並添加一行

  extension=pdo_mysql.so

  windows PDO MYSQL擴充安裝

  php.ini中沒有開啟pdo,故修改php.ini,將形如下面的代碼前面去掉分號,修改後如下:

  extension_dir="E:/amp/php/ext" //這裡配置為你自己的ext目錄路徑

  ......

  extension=php_mysql.dll

  ......

  extension=php_pdo.dll

  ......

  extension=php_pdo_mysql.dll

  重啟apache後訪問又繼續報以下錯誤:

  CDbConnection 無法開啟資料庫連線: could not find driver

  意思是無法找到資料庫驅動,我又用phpinfo看了一下,PDO確實是開啟了,但是PDO那一項中支援的資料庫顯示no value,說明無法載入php_pdo_mysql.dll這個擴充。經過多次嘗試,包括更換php的版本,更換mysql的版本。但是均不奏效。難道真的無法開啟php的mysql pdo擴充了嗎?

  在網上查了又查,終於找到解決方案

  方法一:需要把php安裝目錄的路徑加入到系統內容變數PATH中,這樣就可以解決問題。

  方法二:因為我是在伺服器上部署的,正在運行著的伺服器,所以無法重啟,故也可將php安裝目錄下的libmysql.dll複製到windows目錄下

  重啟apache

http://www.bkjia.com/PHPjc/926229.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/926229.htmlTechArticlePHP中PDO_MYSQL擴充安裝的2種方法 方法一 看到CakePHP文檔要求安裝pdo_mysql擴充,於是就嘗試安裝了一下。 這裡我的系統是CentOS 6.0。如果你的系...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.