我好像忘记了我的密码,以终端(mac)的MySql root用户身份登录。我已经在 http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html 上查阅了mysql文档,但这对我来说似乎不起作用。我接下来可能做什么?
user$ mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
以下是我目前可用的数据库。 MySql数据库似乎没有出现在那里。这是为什么?
user$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 5.6.13 Source distribution
Copyright (c) 2000, 2013, 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> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| test |
+--------------------+
答案 0 :(得分:1)
我个人从来没有能够在重置时使用ini或文本文件方法来发送其他命令。
C.5.4.1.3下的通用指令。重置root密码:来自该超链接的通用指令通常是我找到工作的方式。
要更改root密码:
mysqld
。使用mysqld
命令行选项在“安全模式”中启动--skip-grant-tables
。 (注意:建议尽可能使用--skip-networking
选项,以避免在执行此操作时打开对数据库服务器的访问权限到网络/ Internet的其余部分! )
这将启动mysql守护进程。
打开首选的mysql客户端,以root身份登录,无需密码或在终端输入mysql -u root
。您不需要密码,因为已跳过授权表。
您现在应该能够登录到mysql服务器并显示MOTD /欢迎消息。
运行这些SQL命令(注意:记住尾随的分号!)
use mysql;
update user SET Password=PASSWORD('MyNewPass') WHERE User='root';
FLUSH PRIVILEGES;
退出mysql客户端
停止mysqld
守护程序 - 重要!如果您没有停止守护程序,那么数据库服务器将继续以打开的权限运行!!
在正常情况下重启mysqld
守护程序。
回答你的问题:
以下是我目前可用的数据库。 MySql数据库似乎没有出现在那里。这是为什么?
除非您具有全局SHOW DATABASES权限,否则您只能看到具有某种权限的数据库。