在MacbookPro上安装好MySQL后,执行mysqladmin设置root划倦及礤帐号的密码时,报错mysqladmin:connecttoservera墉掠载牿t'localhost'failederror:'Accessdeniedforuser'root'@'localhost'(usingpassword:NO)'怎么办?
工具/原料
mysql5.7
macbookpro
方法/步骤
1、先停止MySQL服务打开“系统偏好设置”,选择“MySQL”,在打开的对话框中点击“StopMySQLServer”
2、打开终端,输入命令:sudo/usr/l艺皱麾酪ocal/mysql/bin/mysqld_safe--user=mysql--sk足毂忍珩ip-grant-tables--skip-networking&--skip-grant-tables:不启动grant-tables(授权表),跳过权限控制。--skip-networking:跳过TCP/IP协议,只在本机访问(这个选项不是必须的。可以不用)
3、保留开启mysqld_safe的终端,新建一个终端,输入命令:mysql此时我们就可以直接登录到MySQL服务了。
4、查询MySQL的用户信息,输入SQL命令:selecthost,user,authentication_stringfromuser;这一步骤熟悉的人可以跳过,在mysql5.7以前的版本,密码列的英文名是password,但是在5.7版本改成了authentication_string,这点是需要注意的。
5、我们只需要重置用户名为root的密码就可以,输入SQL命令:updateusersetauthentication_string=PASSWORD('123456')whereuser='root'andhost='localhost';
6、新设置用户或更改密码后需用flushprivileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效
7、重启MySQL服务,打开终端,输入命令:mysql-uroot-p输入刚设置好的密码就能成功登录