應用托管在SAE不登錄也能通過 phpmyadmin 管理數據庫
需求:在SAE下開發,經常需要手動修改數據庫數據,可是老是登錄又太麻煩
準備:假設當前我已經在SAE中有了一個應用: malinjie66.sinaapp.com
步驟:
1.下載 phpmyadmin, 版本是 phpMyAdmin-3.3.10.5-all-languages.7z
2.在SAE應用中, 新建一個版本, 假設是 2, 那么現在把 phpmyadmin 的全部文件上傳到該版本. (因為版本1要存放應用的代碼, 而管理這個應用的數據庫, 又必須是在該應用下, 所以最好的辦法是, 新建一個版本啦!)
3.復制 pma/libraries/config.default.php 的內容到 pma/config.inc.php , 如果不存在則新建之
4.修改 config.inc.php 某些位置 , 修改后如下:
$cfg['Servers'][$i]['host'] = SAE_MYSQL_HOST_M; $cfg['Servers'][$i]['port'] = SAE_MYSQL_PORT; $cfg['Servers'][$i]['user'] = SAE_MYSQL_USER; $cfg['Servers'][$i]['password'] = SAE_MYSQL_PASS; $cfg['Servers'][$i]['only_db'] = 'app_malinjie66'; // 你的SAE項目的數據庫名稱 |
5.訪問 2.malinjie66.sinaapp.com , 你會發現要求輸入數據庫用戶名和密碼!(SAE設置的是常量, 我們當然不知道了!) 那么下一步我們就要打印出這兩個常量
SAE_MYSQL_USER 和 SAE_MYSQL_PASS , 但是為了安全起見, 最好在地址欄加一個密鑰驗證, 具體做法是: 在index.php 的最開頭處寫上這幾行代碼 : if($_GET['k']=='s0h94huna43hf4jc8geb1tqxt5jn3bg5'){ echo '數據庫登錄信息:<br />'; echo SAE_MYSQL_USER.' '.SAE_MYSQL_PASS; echo '<br /><br />'; } |
附:
訪問以上地址可能報錯——無法在發生錯誤時創建會話,請檢查 PHP 或網站服務器日志,并正確配置 PHP 安裝。
解決辦法:把地址欄參數k的值,改變下(增加或刪掉一個字母),回車。再改回正確的k值,再回車就不報錯了!郁悶。