您的位置:首页 > 运维架构 > Linux

linux+php7+mysql下phpmyadmin4.7.9无法用root帐号登录的问题

2018-03-24 14:21 239 查看
上次装好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)

[sql] view plain copyCREATE USER 'root_sql'@'localhost' IDENTIFIED BY 'yourpasswd';  
GRANT ALL PRIVILEGES ON *.* TO 'root_sql'@'localhost' WITH GRANT OPTION;  
FLUSH PRIVILEGES;  

3.更新phpMyAdmin配置

打开文件/etc/dbconfig-common/phpmyadmin.conf修改你的配置文件内容[plain] view plain copy# dbc_dbuser: database user  
#       the name of the user who we will use to connect to the database.  
dbc_dbuser='root_sql'  
  
# dbc_dbpass: database user password  
#       the password to use with the above username when connecting  
#       to a database, if one is required  
dbc_dbpass='yourpasswd'  
当然以上情况是新建用户赋予权限,但是如果你想把本来的phpmyadmin账户赋予所有权限,那么你只要执行[plain] view plain copyGRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' IDENTIFIED BY 'yourpasswd';  
FLUSH PRIVILEGES;  
然后再执行2,3步操作就行了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  LAMP