phpmysqlsource的簡單介紹

本文目錄一覽:

linux環境下 php如何配置mysql

Linux下配置安裝PHP環境

參考別人的做法,遇到問題上網查,下面就是安裝步驟.

一、安裝Apache2.2.22

1、到官網下載

2、解壓

tar -zxvf httpd-2.2.22.tar.gz

3、建立目標文件夾(注意以下所有操作都時在root用戶下執行的)

mkdir /usr/local/apache2

也就是說等下安裝的apache2要安裝到這個文件夾裡面

4、配置

回到原來解壓之後產生的文件夾

./configure –prefix=/usr/local/apache2 –enable-module=shared

要加上後面的參數,否則無法使用php,-enable-module=shared表示Apache可以動態的載入模塊

這一步,出現了很多問題:

第一個錯誤為:

checking for APR… no

configure: error: APR not found. Please read the documentation.

解決方法:

download the latest versions of both APR and APR-Util from Apache APR, unpack them into ./srclib/apr and ./srclib/apr-util (be sure the domain names do not have version numbers; for example, the APR distribution must be under ./srclib/apr/)

then do

./configure –with-included-apr

原文章地址:

另外一種解決方法為:

分別安裝APR和APR-util,安裝方法為:首先下載這兩個文件,然後解壓,進入解壓後目錄,然後把APR和APR-util分別安裝到/usr/local/文件夾的apr和apr-util文件夾下。APR的具體安裝方法為:

[root@localhost 52lamp]# tar -zxvf apr-1.4.2.tar.gz //unzip -o apr-1.4.2.zip

[root@localhost 52lamp]# cd apr-1.4.2

[root@localhost apr-1.4.2]# ./configure –prefix=/usr/local/apr

[root@localhost apr-1.4.2]# make

[root@localhost apr-1.4.2]# make install

安裝Apr-util 在./confiure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr

其他步驟類似。

第二個錯誤為:no acceptable C compiler found in $Path

直接運行 yum install gcc,安裝Gcc即可

第三個問題為:pcre-config for libpcre not found

解決方法就是 下載prce安裝包,和APR類似,安裝到/usr/local/pcre文件夾下面即可。PS:fedora下安裝c++編譯器g++的命令為:yum install gcc-c++ 。

5、編譯

make

6、安裝

make install

7、啟動,重啟和停止 ,先切換到安裝完成後的目錄/usr/local/apache2/bin

./apachectl -k start

./apachectl -k restart

./apachectl -k stop

8、配置文件(滿足最基本的配置)

編輯 /usr/local/apache2/conf/httpd.conf 文件

找到:

AddType application/x-compress .Z

AddType application/x-gzip .gz .tgz

在後面添加:

AddType application/x-httpd-php .php(使Apcche支持PHP)

AddType application/x-httpd-php-source .php5

找到:

IfModule dir_module

DirectoryIndex index.html

/IfModule

添加:

IfModule dir_module

DirectoryIndex index.html index.php

/IfModule

找到:

#ServerName

修改為:

ServerName 127.0.0.1:80或者ServerName localhost:80

記得要去掉前面的「#」

9、測試

在瀏覽器里輸入

如果出現It Works!說明成功。這是我的測試結果:O(∩_∩)O哈哈~

10、修改默認的Web站點目錄

默認的目錄為 “/usr/local/apache2/htdocs”,修改apache的配置文件httpd.conf,比如在新建一個 /home/gyw/WebSite的目錄作為apache的站點目錄

找到DocumentRoot這一行修改為:DocumentRoot “/home/gyw/WebSite”

找到 Directory 這一行修改為:Directory “/home/gyw/WebSite”

測試:修改到文件夾出現錯誤:

「You don’t have permission to access /index.html on this server.」

解決方法:

更改文件許可權;chmod 755 index.html

打開apache配置文件httpd.conf,找到這麼一段:

Directory /

Options FollowSymLinks

AllowOverride None

Order deny,allow

deny from all

Satisfy all

/Directory

測試結果如下:

二、安裝PHP

1、 下載

2、解壓

tar -zxvf php-5.3.16.tar.gz

3、建立目標文件夾

mkdir /usr/local/php

也就是說等下安裝的php要安裝到這個文件夾裡面

4、配置

回到原來解壓後的文件夾

./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache/bin/apxs

注意這裡有一個-with-apxs2=/usr/local/apache/bin/apxs選項,其中apxs是在安裝Apache時產生的,apxs是一個為Apache HTTP伺服器編譯和安裝擴展模塊的工具,使之可以用由mod_so提供的LoadModule指令在運行時載入到Apache伺服器中。我的理解是通過這個工具把PHP模塊動態載入到Apache中

出現錯誤:configure: error: xml2-config not found. Please check your libxml2 installation.

運行yum install libxml2,然後再運行yum install libxml2-devel安裝完畢後,重新運行上面的./configure命令。

5、編譯

make

6、測試編譯

make test

7、安裝

make install

8、配置文件

cp /usr/local/src/php-5.3.16/php.ini-development /usr/local/php/lib/php.ini

把原來位於源代碼裡面的php.ini-development拷貝到/usr/local/php/lib/php.ini下,並且重命名為php.ini

9.重啟apache

10、測試

在apache的htdocs下建立一個php文件test.php,裡面的內容如下:

?php

phpinfo();

?

然後在瀏覽器里輸入

如果出現php的相關配置,成功,如果什麼都沒有輸入,說明失敗,重新以上步驟或者查找原因

如果決定在安裝後改變配置選項,只需重複最後的三步configure, make, 以及 make install,然後需要重新啟動 Apache 使新模塊生效。Apache不需要重新編譯。

測試結果如下圖:

三、安裝MySql

1、下載

到官網下載mysql-5.1.65.tar.gz(注意是源碼包)

2、解壓

tar -zxvf mysql-5.1.65.tar.gz

3、建立目標文件夾

mkdir /usr/local/mysql

也就是說等下安裝的mysql要安裝到這個文件夾裡面

4、配置

./configure –prefix=/usr/local/mysql/

在./configure時出現錯誤:error: No curses/termcap library found

下載安裝相應軟體包

yum list|grep ncurses

yum -y install ncurses-devel

yum install ncurses-devel

5、編譯

make

6、安裝

make install

7、啟動

MySQL服務並不會自動啟動,還需要先初始化MySQL資料庫,操作如下:

cd /usr/local/mysql/bin

sudo ./mysql_install_db –user=root

注意,這裡最後的root是指可以操作資料庫的用戶,可以是當前用戶,也可以新建用戶,與linux上的root用戶是兩回事,可以自己取一個名字

./mysqld_safe –user=root 這條命令負責啟動mysql服務的守護進程,此外最後的時必須的,因為希望守護進程在後台運行

這裡的root就是剛才的那個

8、為根用戶創建密碼

./mysqladmin -u root password 『123456』

如果root已經設置過密碼,採用如下方法

./mysqladmin -u root password oldpass 『123456』

9、測試

mysql -u root -p

會提示輸入密碼,就用剛才設置的密碼

123456

如果出現mysql,說明連接成功了,下面通過命令 創建一個資料庫、建一個表,增加一條記錄,為後面的測試準備

mysql create database gywtest;

mysql use gywtest;

mysql create table student(id int(4) not null primary key auto_increment,stuname char(20));

mysql insert into student(stuname) values(‘Tom’);

注意每條命令後面有個分號,如果上面的都成功,後面就可以用這個測試。

四、將PHP與MySql結合起來

1、重新配置PHP,改變配置選項,只需重複PHP安裝時的最後的三步configure, make, 以及 make install,然後需要重新啟動 Apache 使新模塊生效,Apache不需要重新編譯。

2、配置

./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache2/bin/apxs –with-mysqli=/usr/local/mysql/bin/mysql_config 注意mysql_config 的路徑

3、編譯 make

4、安裝 make installe

5、測試 寫一個頁面test.php,放在apache的web目錄下,測試上面用命令創建的資料庫

?php

$mysqli=new mysqli();

$mysqli-connect(‘localhost’,’root’,’123456′,’gywtest’);

// 創建查詢

$sqlstr=’select * from student’;

//發送查詢給MySql

$result=$mysqli-query($sqlstr);

while($row=$result-fetch_object())

{

$name=$row-stuname;

echo $name;

}

?

Fatal error: Class ‘mysqli’ not found in /home/lufangtao/Project/DB.php on line 3

解決方法:

/usr/local/php/bin/phpize 這裡回車運行

出錯:

Cannot find config.m4.

Make sure that you run ‘./phpize’ in the top level source directory of the module

解決方法:

PHP源碼包文件夾下的EXT文件夾就是放置著目前版本的可用擴展,CD進去看看都有哪些你需要的?應該看到mysqli文件夾了吧~~~

在當前目錄下執行phpize

[root@localhost mysqli]#/usr/local/php/bin/phpize

Configuring for:

PHP Api Version: 20090626

Zend Modeule Api No: 20090626

Zend Extension Api No: 220090626

Cannot find autoconf. Please check your autoconf installation and the

$PHP_AUTOCONF environment variable. Then, rerun this script.

解決方法:

yum install autoconf再次運行上面的命令即可。

[root@localhost mysqli]#./configure –prefix=/opt/mysqli –with-php-config=/opt/php/bin/php-config –with-mysqli=/opt/mysql/bin/mysql_config

[root@localhost mysqli]#make

[root@localhost mysqli]#make install

安裝完成後會有提示擴展所在目錄路徑,如:

/opt/php/lib/php/extensions/no-debug-zts-20090626php

所需的mysqli.so便會在此目錄下,接下來修改/opt/php/etc/下的php.ini文件,加入mysqli擴展,即加入如下一行:

extension=/opt/php/lib/php/extensions/no-debug-zts-20090626/mysqli.so

這裡還是回出現錯誤:

參考博客

解決不用擴展連接MySQL的方法。

最終還是沒有解決MySQLi連接的問題,但是可以使用MySQL資料庫了,下面是測試程序

複製代碼

?php

$link=mysql_connect(‘localhost’,’root’,’123456′);

if(!$link) echo “F!”;

else echo “S!”;

mysql_select_db(“students”) or die(“Could not select database”);

$query=”SELECT * FROM student;”;

$result=mysql_query($query) or die(“Query failed”);

print “table\n”;

while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {

print “\ttr\n”;

foreach ($line as $col_value) {

print “\t\ttd$col_value/td\n”;

}

print “\t/tr\n”; }

print “/table\n”;

/* 釋放資源 */

mysql_free_result($result);

mysql_close();

?

~

複製代碼

(php)mysql如何把一個資料庫里的表導入另一個資料庫

簡單示例:

?php

//設置編碼格式

header(“Content-type:text/html;charset=utf-8”);

//鏈接資料庫

$conn = mysql_connect(“localhost”,”root”,””);

//選擇要操作的資料庫

mysql_select_db(‘act1’,$conn);

//設置操作資料庫編碼格式

mysql_query(“set names utf8”);

//執行查詢操作

$re= mysql_query(“select user_name,phone from user”);

//申明空數組,以便裝數據

$records=array();

//循環將數據裝入數組中

while($row=@mysql_fetch_row($re)){

$records[]=$row;

}

//選擇要導入的資料庫

mysql_select_db(‘act2’,$conn);

//設置操作資料庫編碼格式

mysql_query(“set names utf8”);

//構造插入sql語句

$sql2=”INSERT INTO user(user_name,phone) VALUES”;

//循環記錄集,插入新資料庫的表中

foreach ($records as $ite){

//構造插入值字元串

$valuestr = “‘”.$ite[0].”‘,”.”‘”.$ite[1].”‘”;

//給字元串最外邊拼接括弧

$sql2 .= “(“.$valuestr.”),”;

}

//去除構造sql語句最後的逗號

$sql2 = substr($sql2,0,-1);

//執行插入操作

mysql_query($sql2);

//關閉mysql鏈接

mysql_close();

?

資料庫act1 user表數據:

插入到資料庫act2  user表數據如下:

php 怎麼讀取mysql一條數據並輸出某一欄位

可以參考下面的代碼:

//連接資料庫伺服器

$link = mysql_connect(『host(伺服器ip地址,本地用localhost)』,’資料庫賬戶’,『資料庫密碼』);

//選擇要連接的資料庫

mysql_select_db(‘資料庫名字’);

//執行查詢,返回數據源

$query = mysql_query(“SELECT * FROM test”);

//遍曆數據源,並賦值給$r,當沒有數據時,變成false中斷循環

while($r = mysql_fetch_array($query)){

echo $r[‘field_name’];//輸出欄位

}

擴展資料:

mysql使用說明

1、如果是用 MySQL + Apache,使用的又是 FreeBSD 網路操作系統的話,安裝時候應按注意到FreeBSD的版本問題,在 FreeBSD 的 3.0 以下版本來說,MySQL Source 內含的 MIT-pthread 運行是正常的,但在這版本以上,必須使用 native threads,也就是加入一個 with-named-thread-libs=-lc_r 的選項。

2、如果在 COMPILE 過程中出了問題,請先檢查gcc版本是否在 2.81 版本以上,gmake 版本是否在3.75以上。

3、如果不是版本的問題,那可能是內存不足,請使用 ./configure–with-low-memory 來加入。

4、如果要重新做configure,那麼可以鍵入 rm config.cache 和 make clean 來清除記錄。

5、把 MySQL 安裝在 /usr/local 目錄下,這是預設值,也可以按照需要設定所安裝的目錄。

參考資料來源:百度百科-mySQL (關係型資料庫管理系統)

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/286403.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-23 03:47
下一篇 2024-12-23 03:47

相關推薦

  • Python簡單數學計算

    本文將從多個方面介紹Python的簡單數學計算,包括基礎運算符、函數、庫以及實際應用場景。 一、基礎運算符 Python提供了基礎的算術運算符,包括加(+)、減(-)、乘(*)、除…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • Python海龜代碼簡單畫圖

    本文將介紹如何使用Python的海龜庫進行簡單畫圖,並提供相關示例代碼。 一、基礎用法 使用Python的海龜庫,我們可以控制一個小海龜在窗口中移動,並利用它的「畫筆」在窗口中繪製…

    編程 2025-04-29
  • Python櫻花樹代碼簡單

    本文將對Python櫻花樹代碼進行詳細的闡述和講解,幫助讀者更好地理解該代碼的實現方法。 一、簡介 櫻花樹是一種圖形效果,它的實現方法比較簡單。Python中可以通過turtle這…

    編程 2025-04-28
  • Python大神作品:讓編程變得更加簡單

    Python作為一種高級的解釋性編程語言,一直被廣泛地運用於各個領域,從Web開發、遊戲開發到人工智慧,Python都扮演著重要的角色。Python的代碼簡潔明了,易於閱讀和維護,…

    編程 2025-04-28
  • 用Python實現簡單爬蟲程序

    在當今時代,互聯網上的信息量是爆炸式增長的,其中很多信息可以被利用。對於數據分析、數據挖掘或者其他一些需要大量數據的任務,我們可以使用爬蟲技術從各個網站獲取需要的信息。而Pytho…

    編程 2025-04-28
  • 如何製作一個簡單的換裝遊戲

    本文將從以下幾個方面,為大家介紹如何製作一個簡單的換裝遊戲: 1. 遊戲需求和界面設計 2. 使用HTML、CSS和JavaScript開發遊戲 3. 實現遊戲的基本功能:拖拽交互…

    編程 2025-04-27
  • Guava Limiter——限流器的簡單易用

    本文將從多個維度對Guava Limiter進行詳細闡述,介紹其定義、使用方法、工作原理和案例應用等方面,並給出完整的代碼示例,希望能夠幫助讀者更好地了解和使用該庫。 一、定義 G…

    編程 2025-04-27
  • 2的32次方-1:一個看似簡單卻又複雜的數字

    對於計算機領域的人來說,2的32次方-1(也就是十進位下的4294967295)這個數字並不陌生。它經常被用來表示IPv4地址或者無符號32位整數的最大值。但實際上,這個數字卻包含…

    編程 2025-04-27
  • 製作一個簡單的管理系統的成本及實現

    想要製作一個簡單的管理系統,需要進行技術選型、開發、測試等過程,那麼這個過程會花費多少錢呢?我們將從多個方面來闡述製作一個簡單的管理系統的成本及實現。 一、技術選型 當我們開始思考…

    編程 2025-04-27

發表回復

登錄後才能評論