方法三 mysql> INSERT INTO mysql.user (Host,User,Password) VALUES('%','jeffrey',PASSWORD('biscuit')); mysql> FLUSH PRIVILEGES 确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。 在《mysql中文参考手册》里有这个例子,所以我也就写出来了。 注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。 方法四 和方法三一样,只是使用了REPLACE语句 mysql> REPLACE INTO mysql.user (Host,User,Password) VALUES('%','jeffrey',PASSWORD('biscuit')); mysql> FLUSH PRIVILEGES 方法五 使用SET PASSWORD语句, mysql> SET PASSWORD FOR " = PASSWORD('biscuit'); 拟也必须使用PASSWORD()函数, 但是不需要使用FLUSH PRIVILEGES。 方法六 使用GRANT ... IDENTIFIED BY语句 mysql> GRANT USAGE ON *.* TO " IDENTIFIED BY 'biscuit'; 这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。 注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。 MySQL 忘记口令的解决办法 如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。 启动 MySQL :bin/safe_mysqld --skip-grant-tables & 就可以不需要密码就进入 MySQL 了。 然后就是 >use mysql >update user set password=password("new_pass") where user="root"; >flush privileges; 重新杀 MySQL ,用正常方法启动 MySQL 。
小棉袄
2021-03-17 18:25:29
所谓的ERROR 2003: Can't connect to MySQL server on 'localhost' (10061) 估计应该是MySQL服务没有正常运行造成的, 所以只要重新正确启动MySQL服务,问题就迎刃而解了!
你的mysql服务器配置可能有问题吧? 看MySQL服务属性, Path to executable的设置上,mysqld-nt的位置设置路径是否正确。