原文鏈接 https://blog.csdn.net/teddy_dewei_lu/article/details/79659013
上次裝好mysql,phpmyadmin,登錄后由於默認設置的賬號密碼登錄是看不到本地mysql的數據庫,而且是無法創建數據庫的,那么這就很尷尬了,看了網上其他說法,有的說修改config.inc.php,有的說修改mysql的配置文件,但似乎都並不適合我的這個錯誤,后來查閱了相關資料后,才發現MySQL 5.7改變了安全模式:現在MySQL root登錄需要一個sudo(而密碼仍然可以是空白的)。就是說,phpMyAdmin將無法使用根憑證。
那么怎么辦呢?最簡單(最安全)的解決方案將創建一個新用戶並授予所需的權限。
MySQL賦予用戶權限的命令的格式為:
grant 權限 on 數據庫對象 to 用戶 identified by "密碼"
第一步,鏈接數據庫
sudo mysql -u root -p
2. 創建一個用來賦予權限的賬戶(例如 root_sql)
CREATE USER 'root_sql'@'localhost' IDENTIFIED BY 'yourpasswd';
GRANT ALL PRIVILEGES ON *.* TO 'root_sql'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
3.更新phpMyAdmin配置
打開文件/var/www/html/phpmyadmin/libraries/config.default.php
修改你的配置文件內容
/** * MySQL user * * @global string $cfg['Servers'][$i]['user'] */ $cfg['Servers'][$i]['user'] = 'root_sql'; /** * MySQL password (only needed with 'config' auth_type) * * @global string $cfg['Servers'][$i]['password'] */ $cfg['Servers'][$i]['password'] = 'yourpasswd';
注(ip為127.0.0.1 端口為空)
4.登錄即可
賬號:root_sql 密碼:yourpasswd
當然以上情況是新建用戶賦予權限,但是如果你想把本來的phpmyadmin賬戶賦予所有權限,那么你只要執行
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' IDENTIFIED BY 'yourpasswd';
FLUSH PRIVILEGES;
然后再執行2,3步操作就行了