Cha*_*ase 75 mysql root mysql-workbench workbench
我一直在收到这个错误.
我正在使用mySQL Workbench,而我发现root的架构权限是null.根本没有特权.
我在使用我的服务器的平台上遇到了麻烦,这一直是个问题.
root@127.0.0.1显然有很多访问权限,但我已经登录了,但它只是分配给localhost - localhost没有权限.
我已经完成了一些类似的事情FLUSH HOSTS,FLUSH PRIVILEGES但是从那个或互联网上找不到任何成功.
我怎样才能获得root访问权限?我发现这令人沮丧,因为当我环顾四周时,人们希望你"有访问权限",但我没有访问权,所以我无法进入命令行或其他GRANT任何东西.
运行时SHOW GRANTS FOR root这是我得到的回报:
错误代码:1141.在主机'%'上没有为用户'root'定义此类授权
感谢任何可以提供帮助的人
Kei*_*DOG 63
如果您在MySql 5.7中遇到同样的问题.+:
Access denied for user 'root'@'localhost'
Run Code Online (Sandbox Code Playgroud)
这是因为MySql 5.7默认允许连接socket,这意味着你只需要连接sudo mysql.如果你运行sql:
SELECT user,authentication_string,plugin,host FROM mysql.user;
Run Code Online (Sandbox Code Playgroud)
然后你会看到它:
+------------------+-------------------------------------------+-----------------------+-----------+
| user | authentication_string | plugin | host |
+------------------+-------------------------------------------+-----------------------+-----------+
| root | | auth_socket | localhost |
| mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *497C3D7B50479A812B89CD12EC3EDA6C0CB686F0 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
要允许与root和password连接,请使用以下命令更新表中的值:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Current-Root-Password';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)
然后再次运行select命令,您将看到它已更改:
+------------------+-------------------------------------------+-----------------------+-----------+
| user | authentication_string | plugin | host |
+------------------+-------------------------------------------+-----------------------+-----------+
| root | *2F2377C1BC54BE827DC8A4EE051CBD57490FB8C6 | mysql_native_password | localhost |
| mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *497C3D7B50479A812B89CD12EC3EDA6C0CB686F0 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
就是这样.您可以在运行并完成sudo mysql_secure_installation命令后运行此过程.
And*_*nes 44
使用重置root密码的说明 - 但是我们将强制将记录插入mysql.user表,而不是重置root密码.
在init文件中,请改用它
INSERT INTO mysql.user (Host, User, Password) VALUES ('%', 'root', password('YOURPASSWORD'));
GRANT ALL ON *.* TO 'root'@'%' WITH GRANT OPTION;
Run Code Online (Sandbox Code Playgroud)
Dan*_*ser 34
它不喜欢我的用户权限,所以我就是它.(在bash中"sudo设置用户和密码)(这给了root的用户名并将密码设置为空)(在Mac上)
sudo mysql -uroot -p
Run Code Online (Sandbox Code Playgroud)
aas*_*ish 24
请尝试以下命令
~$ sudo /etc/init.d/mysql stop
~$ sudo mysqld_safe --skip-grant-tables &
~$ mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.1.15-Debian_1-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
mysql> use mysql;
mysql> update user set password=PASSWORD("root") where User='root';
mysql> flush privileges;
mysql> quit
~$ sudo /etc/init.d/mysql stop
Stopping MySQL database server: mysqld
STOPPING server from pid file /var/run/mysqld/mysqld.pid
mysqld_safe[6186]: ended
[1]+ Done mysqld_safe --skip-grant-tables
~$ sudo /etc/init.d/mysql start
~$ mysql -u root -p
* MySQL Community Server 5.6.35 is started
~$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.35 MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Run Code Online (Sandbox Code Playgroud)
Ari*_*afa 17
对于在mysql 5.7+版本中面临以下错误的人 -
Access denied for user 'root'@'localhost' (using password: YES)
Run Code Online (Sandbox Code Playgroud)
打开新终端
sudo /etc/init.d/mysql stop
... MySQL社区服务器5.7.8-rc已停止
sudo mysqld_safe --skip-grant-tables &
这将skipp所有授予级别权限并以安全模式启动mysql有时这个过程因为而被卡住了
grep:写错误:Broken pipe 180102 11:32:28 mysqld_safe登录到'/var/log/mysql/error.log'.
只需按Ctrl + Z或Ctrl + C即可中断并退出进程
mysql -u root欢迎使用MySQL监视器.命令以;结尾; 或\ g.您的MySQL连接ID是2服务器版本:5.7.8-rc MySQL社区服务器(GPL)
版权所有(c)2000,2015,Oracle和/或其附属公司.版权所有.
Oracle是Oracle Corporation和/或其附属公司的注册商标.其他名称可能是其各自所有者的商标.
输入'help;' 或'\ h'寻求帮助.输入'\ c'清除当前输入语句.
use mysql;读取表信息以完成表名和列名您可以关闭此功能以使用-A更快地启动
数据库已更改
mysql> update user set authentication_string=password('password') where user='root';
查询OK,4行受影响,1警告(0.03秒)匹配行数:4已更改:4警告:1
mysql> flush privileges;
查询OK,0行受影响(0.00秒)
mysql> quit
再见
sudo /etc/init.d/mysql stop
..180102从PID文件11时37分12秒mysqld_safe的mysqld的/var/run/mysqld/mysqld.pid结束.*MySQL社区服务器5.7.8-rc已停止arif @ ubuntu:〜$ sudo /etc/init.d/mysql start ..*MySQL社区服务器5.7.8-rc已启动
mysql -u root -p
输入密码:
欢迎使用MySQL监视器.命令以;结尾; 或\ g.您的MySQL连接ID是2服务器版本:5.7.8-rc MySQL社区服务器(GPL)
在mysql 5.7+版本之后,将列密码替换为mysql.user表中的名称authentication_string.
希望这些步骤对任何人都有帮助,谢谢.
Tan*_*ick 11
如果您在 Workbench 中收到此错误,但您可以从终端登录,请按照以下步骤操作。
首先只需使用您当前的密码登录:
sudo mysql -u root -p
Run Code Online (Sandbox Code Playgroud)
然后更改您的密码,因为低强度密码有时会出错。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new-strong-password';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)
然后只需退出并再次使用您的新密码登录:
quit
sudo mysql -u root -p
Run Code Online (Sandbox Code Playgroud)
成功登录后,输入以下命令:
use mysql;
Run Code Online (Sandbox Code Playgroud)
它应该显示类似“数据库已更改”的消息,然后键入:
UPDATE user SET plugin='mysql_native_password' WHERE User='root';
Run Code Online (Sandbox Code Playgroud)
在该类型之后:
UPDATE mysql.user set authentication_string=PASSWORD('new-strong-password') where user='root';
Run Code Online (Sandbox Code Playgroud)
然后输入:
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)
然后简单地退出:
quit
Run Code Online (Sandbox Code Playgroud)
现在尝试在您的 WORKBENCH 中使用您的新密码登录。希望它会起作用。谢谢你。
在Linux系统上重置root密码的简单方法:
sudo dpkg-reconfigure mysql-server-5.5
Run Code Online (Sandbox Code Playgroud)
查看拒绝访问的其他一些原因:
https://dev.mysql.com/doc/refman/5.7/en/problems-connecting.html
我使用的是ubuntu 18,并使用以下命令简单地安装了MySQL(password:root)。
sudo apt install mysql-server
sudo mysql_secure_installation
Run Code Online (Sandbox Code Playgroud)
当我尝试以普通的ubuntu用户登录时,这使我遇到了这个问题。
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
Run Code Online (Sandbox Code Playgroud)
But I was able to login to MySQL via the super user. Using the following commands I was able to log in via a normal user.
sudo mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
exit;
Run Code Online (Sandbox Code Playgroud)
Then you should be able to login to Mysql with the normal account.
小智 6
就我而言,我在 Mac OS Big Sur 上全新安装 mysql 后发现了此错误。
我修复它的方法是:单击苹果徽标,转到系统首选项,然后单击 mysql。
打开的设置窗口上有一个初始化数据库按钮,我点击它,然后当我尝试再次访问时,问题就解决了。
小智 5
我在 Ubuntu 服务器上安装 Testlink 时遇到了这个问题,我按照以下步骤操作
mysql -u root
use mysql;
update user set password=PASSWORD("root") where User='root';
flush privileges;
quit
Run Code Online (Sandbox Code Playgroud)
现在停止实例并重新启动,即
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
544948 次 |
| 最近记录: |