头部置顶提示!!!!!!!!!!!!!!!!!!!!!!!!!!!!
在此过程中出现The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
请执行以下命令再次执行:
因为之前可能有错误语句没有清除掉,所以需要清除之前的错误语句!
flush privileges;
在此过程中出现1058的错误代码
请仔细想一想是不是刚刚删除服务了,或者禁用了mysql服务:
操作服务之后最好重启一下!
如果外网访问出现问题
增加权限
GRANT EXECUTE, PROCESS, SELECT, SHOW DATABASES ON . TO ‘用户名’@’%’;
FLUSH PRIVILEGES;
完成之后发现1142错误,则是因为没有给本地账户提供权限跳过权限验证看一下是否权限都为N
select * from user where user='用户名'
如果一大部分权限为为N则需要赋予权限:
update mysql.user set Grant_priv='Y',Super_priv='Y' where user='root';
flush privileges;
grant all on *.* to 'root'@'localhost';
在此过程中出现The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
请执行以下命令再次执行:
flush privileges;
正文:
1.到mysql----bin目录下 命令行
执行mysqld -install注册服务
ps:如果出现Install/Remove of the Service Denied!请使用管理员权限打开cmd重试
2.如果出现了Host ‘localhost’ is not allowed to connect to this MySQL server
试了很多办法不管用,停止mysql服务
命令行 net stop mysql
删除服务 myslqd -remove
重启电脑!!!!
再次执行1的步骤
一般来说不会丢服务
3.如果出现了Host ‘localhost’ is not allowed to connect to this MySQL server
有两种解决办法 不安全的:跳过验证
在mysql安装目录下 my.ini
在末尾加上skip-grant-tables
如果是自己用不是客户的环境这样足够了,如果在生产环境或者客户的机器就需要再次添加访问用户
步骤:
进入mysql
mysql -u root -p
进入mysql中:
use mysql
查询现有的帐户权限:
select user,host,grant_priv from user;
if(更改帐户权限){
update user set host = '%' where user = '用户名';
}else if (增加账户){
Create user '账号'@'localhost' identified by '密码';
GRANT USAGE ON *.* TO '账号'@'localhost' IDENTIFIED BY '密码' WITH GRANT OPTION;
}
以上执行之后可以再次查询帐户信息
select user,host,grant_priv from user;
查看新添加的帐户是否存在了,权限是否是y。
然后再刷新并退出然后删除my.ini下的配置
flush privileges;
quit
GameOver祝大家前程似锦,工作顺利,永无bug