天天看點

PhpMyAdmin隐藏資料庫設定同字首失效的問題

用phpmyadmin預設會把所有資料庫都顯示出來,一些如 mysql,information_schema之類的也會顯示,這樣既不安全看着也不爽,隐藏掉最好。

修改 config.inc.php 或者 config.sample.inc.php

預設應該是沒有這兩個配置的,可以手動添加上:

only_db 是隻顯示的資料庫名, 用數組格式 hide_db 是執行要隐藏的資料庫名,用正則比對模式 根據你的實際情況,兩個中選一個設定就行了
PhpMyAdmin隐藏資料庫設定同字首失效的問題

上面這些其實網上都有許多人提到過了,我這裡主要是說明下面的問題:

如果你的資料庫是用 _ 下劃線來區分字首分組的話,這是可能存在一個 bug ,隐藏會失效

如下圖:

PhpMyAdmin隐藏資料庫設定同字首失效的問題

我明明在配置中已經設定了隻有 union 能顯示,其他的都給隐藏,但唯獨同字首的 count 仍然顯示,拒不服從隐藏指令。

糾結了好半天,終于找到原因,是因為預設的資料庫名分隔符的原因,換成其他符号就行了,但是 _ 下劃線就不能進行分組管理了,這實際上個是個很好的功能,資料庫多了看的頭昏眼花,有個分組好得多,但因為這個 bug 就用不了了,沒心思改源碼,将就了吧。

也可在配置檔案中添加代碼:

尼瑪,太坑爹了。。。發現一個很崩潰的問題,上面設定的時候,估計是面闆上送出配置會被寫入資料庫,導緻配置檔案修改始終無效了,隻有通過伺服器指令行下進行修改恢複。

進入 phpmyadmin 資料庫,如果你有裝他這個資料庫的話跟你的配置來。

PhpMyAdmin隐藏資料庫設定同字首失效的問題

更新下這個配置字段,去掉 hide_db 和 only_db 的配置

這樣就可以恢複了。。。無語