我在访问 MySQL 时遇到问题。我需要创建并导入数据库,但我的默认用户没有必要的权限来执行此操作。
我正在使用 Ubuntu 16.04,有关操作系统和平台的更多详细信息:
# uname -a
Linux improve1 4.4.0-59-generic #80-Ubuntu SMP Fri Jan 6 17:36:54 UTC 2017 i686 i686 i686 GNU/Linux
这是我的 MySQL 版本:
# mysql --version
mysql Ver 14.14 Distrib 5.7.17, for Linux (i686) using EditLine wrapper
安装期间创建的唯一用户(我被允许只创建该用户)名为“phpmyadmin”。
如果我尝试使用 phpMyAdmin 来使用此用户权限(在http://localhost/phpmyadmin)我看到“无特权”
如果在控制台登录后尝试执行此操作,我会遇到以下问题:
mysql> CREATE DATABASE bulterm;
ERROR 1044 (42000): Access denied for user 'phpmyadmin'@'localhost' to database 'bulterm'
当我检查该用户的权限时,我看到以下内容:
mysql> SHOW GRANTS FOR 'phpmyadmin'@'localhost';
+--------------------------------------------------------------------+
| Grants for phpmyadmin@localhost |
+--------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'phpmyadmin'@'localhost' |
| GRANT ALL PRIVILEGES ON `phpmyadmin`.* TO 'phpmyadmin'@'localhost' |
+--------------------------------------------------------------------+
2 rows in set (0,00 sec)
但是当我尝试执行任何操作(例如创建数据库、创建新用户等)时,受到了限制。
我想创建一个 MySQL 用户“root”,并赋予其执行所有操作的全部权限。
我该如何解决我的问题?
答案1
分为三个步骤:
sudo systemctl stop mysql
sudo dpkg-reconfigure mysql-server-5.7
sudo systemctl start mysql
中间步骤将允许您更改 root 密码。
答案2
尝试登录用户根和密码与 Mysql 用户使用的相同
phpmyadmin面板将打开并按照以下步骤操作:
1)转到用户 2)检查你的用户是否存在于 mysql 用户中
用户 主持人 密码 全球的 特权 授予 行动
3)点击编辑特定权限用户
4)检查标记所有全球特权和去
5)使用当前用户登录它将访问创建和允许权限
谢谢..!!
答案3
您需要phpmyadmin.conf
从dbconfig-common
文件夹打开并将数据库用户名从“phpmyadmin”更改为“root”:
sudo gedit /etc/dbconfig-common/phpmyadmin.conf
# dbc_dbuser: database user
# the name of the user who we will use to connect to the database.
dbc_dbuser='root'
# dbc_dbpass: database user password
# the password to use with the above username when connecting
# to a database, if one is required
dbc_dbpass='12345'