昨天我也遇到了这个问题。要解决此问题,请执行以下步骤: 连接到mysql: sudo mysql -u root 在数据库中检查mysql用户: SELECT User,Host FROM mysql.user; 删除根用户帐户: DROP USER 'root'@'localhost'; 重新创建根用户: CREATE USER 'root'@'%' IDENTIFIED BY '' 向根用户授予所有权限: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; 为根用户设置密码: ALTER USER 'root'@'%' IDENTIFIED BY 'yourpassword'; 就这样!现在您应该可以连接mysql了。
我正在workbench中使用Ubuntu18.04和MySQL5.7版本,但通过以下10个步骤解决了这个问题 连接到mysql: sudo mysql -u root 在数据库中检查mysql用户: SELECT User,Host FROM mysql.user; 删除根用户帐户: DROP USER 'root'@'localhost'; SET GLOBAL validate_password_length = 5; SET GLOBAL validate_password_number_count = 0; SET GLOBAL validate_password_mixed_case_count = 0; SET GLOBAL validate_password_special_char_count = 0; SET GLOBAL validate_password_policy = LOW; 重新创建根用户: CREATE USER 'root'@'%' IDENTIFIED BY 'admin' 向根用户授予所有权限: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
3条答案
按热度按时间c86crjj01#
昨天我也遇到了这个问题。要解决此问题,请执行以下步骤:
连接到mysql:
sudo mysql -u root
在数据库中检查mysql用户:SELECT User,Host FROM mysql.user;
删除根用户帐户:DROP USER 'root'@'localhost';
重新创建根用户:CREATE USER 'root'@'%' IDENTIFIED BY ''
向根用户授予所有权限:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
为根用户设置密码:ALTER USER 'root'@'%' IDENTIFIED BY 'yourpassword';
就这样!现在您应该可以连接mysql了。cdmah0mi2#
我正在workbench中使用Ubuntu18.04和MySQL5.7版本,但通过以下10个步骤解决了这个问题
连接到mysql:
sudo mysql -u root
在数据库中检查mysql用户:SELECT User,Host FROM mysql.user;
删除根用户帐户:DROP USER 'root'@'localhost';
SET GLOBAL validate_password_length = 5;
SET GLOBAL validate_password_number_count = 0;SET GLOBAL validate_password_mixed_case_count = 0;
SET GLOBAL validate_password_special_char_count = 0;SET GLOBAL validate_password_policy = LOW;
重新创建根用户:CREATE USER 'root'@'%' IDENTIFIED BY 'admin'
向根用户授予所有权限:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
qyyhg6bp3#
只有“-u root”用户需要sudo。对于大多数访问,最好不要使用root,因此只需使用sudo以root身份登录并创建一个新用户:
那么您应该能够访问“mysql-u newuser”而无需sudo。