我是MySQL的新手,我正在尝试在我的Windows桌面上运行WordPress,它需要MySQL。
我使用Microsoft提供的Web Platform Installer
安装所有内容。我从未为MySQL设置root密码,在安装WordPress的最后一步,它要求提供MySQL服务器密码。
root(如果有)的默认密码是什么以及如何更改?
我试过了:
mysql -u root password '123'
但它告诉我:
Access denied for user 'root@localhost' (using password:NO)
在此之后我尝试:
mysql -u root -p
但是,它要求输入我没有的密码。
更新:正如Bozho建议的那样,我做了以下事情:
执行以下命令
mysqld --defaults-file="C:\\program files\\mysql\\mysql server 5.1\\my.ini" --init-files=C:\\root.txt
该命令运行时带有关于我在下面提到的字符集的警告
我在命令行中写道
mysql -u root -p
EnterPassword: 123 // 123 was the password
命令行显示以下错误
Access denied for user 'root@localhost' (using password:**YES**)
我该如何解决这个问题?我等着你的消息。
答案 0 :(得分:52)
这种错误;您只需要以管理员身份为root用户设置新密码。请按照以下步骤操作:
[root ~]# mysql -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:NO)
停止运行mysql的服务/守护进程
[root ~]# service mysql stop
mysql stop/waiting
使用以下选项启动没有任何权限的mysql; 此选项用于启动,不使用MySQL的权限系统。
[root ~]# mysqld_safe --skip-grant-tables &
此时,终端似乎暂停。就这样,并使用新的终端进行后续步骤。
进入mysql命令提示符
[root ~]# mysql -u root
mysql>
修复root用户的权限设置;
mysql> use mysql;
Database changed
mysql> select * from user;
Empty set (0.00 sec)
mysql> truncate table user;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> grant all privileges on *.* to root@localhost identified by 'YourNewPassword' with grant option;
Query OK, 0 rows affected (0.01 sec)
*如果您不想要任何密码或更确切地说是空密码
mysql> grant all privileges on *.* to root@localhost identified by '' with grant option;
Query OK, 0 rows affected (0.01 sec)*
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
确认结果:
mysql> select host, user from user;
+-----------+------+
| host | user |
+-----------+------+
| localhost | root |
+-----------+------+
1 row in set (0.00 sec)
退出shell并以正常模式重启mysql。
mysql> quit;
[root ~]# kill -KILL [PID of mysqld_safe]
[root ~]# kill -KILL [PID of mysqld]
[root ~]# service mysql start
现在您可以使用您设置的密码以root用户身份成功登录
[root ~]# mysql -u root -pYourNewPassword
mysql>
答案 1 :(得分:35)
你可以reset your root password。请记住,不建议在没有密码的情况下使用root。
答案 2 :(得分:14)
1)您可以通过调用MySQL控制台来设置root密码。它位于
默认情况下为 C:\wamp\bin\mysql\mysql5.1.53\bin
。
转到目录并输入MySQL。然后设置密码如下..
> SET PASSWORD FOR root@localhost = PASSWORD('new-password');
2)您可以通过编辑
为root用户配置wamp的phpmyadmin应用程序C:\wamp\apps\phpmyadmin3.3.9\config.inc.php
注意: - 如果您正在使用xampp,则文件将位于
C:\xampp\phpMyadmin\config.inc.php
看起来像这样:
$cfg['Servers'][$i]['verbose'] = 'localhost';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'YOURPASSWORD';
$cfg['Servers'][$i]['AllowNoPassword'] = false;
错误“拒绝用户'root @ localhost'(使用密码:NO)”
将$cfg['Servers'][$i]['AllowNoPassword']
设置为 false
如果您私下更改了“root @ localhost”的密码,那么您必须做两件事来解决错误“访问权限为用户'root @ localhost'”:
这将解决错误。
注意:phpmyadmin是一个单独的工具,附带wamp。 它只是为MySQL提供了一个接口。如果你更改我的sql root的密码,那么你应该更改phpmyadmin配置。通常phpmyadmin配置为root用户。
答案 3 :(得分:9)
我在OS X El队长身上得到了同样的错误。 Mysql 5.7版。执行这些步骤后,我能够用root连接到mysql。
停止mysql服务器
sudo mysql.server stop
以安全模式启动mysql
sudo mysqld_safe --skip-grant-tables
使用mysqld,将数据库更改为mysql并更新用户'root'的详细信息。
show databases;
use mysql;
UPDATE mysql.user
SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N'
WHERE User = 'root' AND Host = 'localhost';
exit;
之后杀死'mysqld_safe'进程并正常启动mysql。您应该能够使用root和新密码登录mysql。 SQL docs for more details
答案 4 :(得分:3)
确保您的计算机上正在运行MySQL服务,然后按照MySQL的说明初步设置root(搜索'windows',它将带您进入设置root的步骤):
http://dev.mysql.com/doc/refman/5.1/en/default-privileges.html
答案 5 :(得分:3)
有关某些信息,更改密码后出现错误:
拒绝用户'root'@'localhost'的访问(使用密码:否)
拒绝用户'root'@'localhost'的访问(使用密码:是)
在两种情况下都存在错误。
但是事情是在我尝试过之后
mysql -uroot -ppassword
代替
mysql -u root -p password
->在-uroot和-ppassword之间有空格,因此,如果遇到麻烦的人可以尝试这种方式。
答案 6 :(得分:2)
对于MySQL 5.7。这些是以下步骤:
完全停止MySQL服务器。这可以通过访问Windows XP和Windows Server 2003中的“服务”窗口来完成,您可以在其中停止MySQL服务。
使用“运行”窗口中的“cmd”打开MS-DOS命令提示符。在里面它使用cd命令导航到你的MySQL bin文件夹,例如C:\ MySQL \ bin。
在命令提示符中执行以下命令:mysqld.exe -u root --skip-grant-tables
保持当前的MS-DOS命令提示符,并打开一个新的MS-DOS命令提示符窗口。
使用cd命令导航到您的MySQL bin文件夹,例如C:\ MySQL \ bin。
输入mysql并按Enter键。
您现在应该可以使用MySQL命令提示符了。输入mysql;这样我们就切换到了“mysql”数据库。
执行以下命令更新密码:
更新用户设置authentication_string = password('1111'),其中user ='root';
答案 7 :(得分:1)
在您的代码中,将“root”替换为您的服务器用户名,并将密码替换为您的服务器密码。 例如,如果您在服务器上有数据库和PHP文件http://www.example.com 那么显然你必须使用你的用户名和密码进入这个服务器站点。
答案 8 :(得分:1)
另一个解决方案,如果有人收到错误用户帐户“root”的指定密码无效,或者使用正确的密码也无法连接到数据库服务器,如下所示
•在Windows注册表中,删除HKCU \ Software \ Microsoft \ WebPlatformInstaller
下的mysql_pwd注册表项•Unistall旧版MySQL .NET连接器
•下载并安装最新的MySql .NET Connector。
答案 9 :(得分:1)
只需在C:\ xampp \ mysql \ bin路径中编辑my.ini
文件即可。只需添加:
skip-grant-tables
在# The MySQL server [mysqld]
和port=3306
行之间划线。然后重启MySQL服务器。
看起来像:
答案 10 :(得分:1)
如果您使用的是XAMPP,请转到C:\xampp\phpMyAdmin
,然后打开config.inc.php
,找到$cfg['Servers'][$i]['password'] = ''
行,然后在此处输入密码。
答案 11 :(得分:1)
config.inc.php
中的C:\xampp\phpMyAdmin
更改密码。mysql -u root -p
。config.inc.php
中更新的密码。答案 12 :(得分:1)
如果将端口更改为非标准端口,则需要指定端口:
$ connection = mysqli_connect('localhost:3308','root','','loginapp');
答案 13 :(得分:0)
有些时候,由于安装Wamp或更改root用户的密码选项而发生这种情况。 可以使用privilages - > root(用户),然后将密码选项设置为NO以运行没有任何密码的东西或设置密码并在应用程序中使用它。
答案 14 :(得分:0)
使用mysql -u root -p 它将要求输入密码,然后输入密码。
答案 15 :(得分:0)
设置可能会正确。在这种情况下,您的pymysql
可能已过时。
我跑了:
pip install pymysql --upgrade
答案 16 :(得分:-1)
这是出于安全原因。
试试下面的
recordingName = getFilename();
recorder.setOutputFile(recordingName);
点击回车,输入密码再试
答案 17 :(得分:-2)
mysqladmin -u root -p password
输入您的current
password
然后
输入您的new password