我公司以往是跟外面承租php主機,
最近打算移到另一家,
這幾天在測試時發現,把原本的網頁copy到另一家主機,卻發現一些問題
一般html網頁和無資料庫連線的php顯示沒問題,
但是有牽扯到資料庫連線的php就會無法顯示
(IE顯示HTTP 500錯誤,chrome則是一片空白)
當然資料移過去,因為舊資料庫名稱和使用者名稱與新主機設定皆不同,
這邊我有找出來改了一下,但依舊一樣?
舊廠商的mysql主機是5.1.48,
新廠商的mysql主機是5.6.39,
我在想是否有可能因為之前設計網頁時用的php語法(搞不好比5.1舊)比較舊,
而現在擺在較新版本的mysql主機會有問題?
我不熟php,但好像有聽過當php語法和mysql主機的版本相異時,
會有部分不相容問題.....?
rukawa1 wrote:
一般html網頁和無資料庫連線的php顯示沒問題,
但是有牽扯到資料庫連線的php就會無法顯示
...
舊廠商的mysql主機是5.1.48,
新廠商的mysql主機是5.6.39,
我在想是否有可能因為之前設計網頁時用的php語法(搞不好比5.1舊)比較舊,
而現在擺在較新版本的mysql主機會有問題?...(恕刪)
在 console 下, 用 手工打命令 測測看啊..
Connect to remote MySql database using Command Prompt
https://www.youtube.com/watch?v=90SNkMIS2XM
fedora wrote:
樓主資料庫是怎麼轉移的?
如果用 phpMyAdmin 之類的去 匯出/匯入,照理說資料庫名稱應該一樣啊,怎麼會改變。(記得修改 php.ini 放寬 2MB 的上傳限制,不然匯出/匯入會不完整)
資料庫權限部份,用 root 登入,對那個資料庫開權限,新增一樣的使用者名稱、一樣的密碼,一樣的允許權限。
資料庫名稱、登入帳號名稱、密碼,最好不要亂改,一動牽全身,整個 php 碼有連接資料庫的部份都要重寫。除非當初設計時是採用引入外部變數的方式,那才能修改外部變數設定檔立即套用。
PHP 程式碼的部份,確認下連接資料庫,是不是連接 localhost(127.0.0.1)的。...(恕刪)
如你所說,先從原主機phpMyAdmin匯出,然後匯入新主機
為什麼我在新主機那邊不使用原先的資料庫名稱,帳號,密碼?
這些最好不要亂改一動牽全身,整個 php 碼有連接資料庫的部份都要重寫......
這些我當然知道,
問題在於新主機那邊的規矩!
新主機那邊本來就有我公司一個主網域網站,而這次要移的我是掛子網域上去,
而這新主機有個規定,
就是資料庫名稱和帳號前面需要掛主網域當初申請的名稱,
例如:
主網域名稱叫ABC
我這次要移的的資料庫叫AA,帳號為BB,
到新主機去時就不能設成AA或BB,
必須設定成ABC_AA和ABC_BB(畫面上會強迫ABC_,你只能輸入_後面的名稱)....><
PHP程式碼部分:
$DB_str = "mysql,localhost,abc_aa,abc_bb,poqa951"
看起來是localhost沒錯,
後面三個分別是資料庫名稱,帳號,密碼,
我在拷貝過去後也把這三個改成跟新主機上設定一樣,
但還是不行,PHP我不熟..........
內文搜尋

X