cmd中mysql的配置异常问题 5C

我的mysql,在cmd命令中打不开,于是我用以下方法
1.找到配置文件my.ini  ,然后将其打开,可以选择用记事本打开
2.打开后,搜索mysqld关键字
找到后,在mysqld下面添加skip-grant-tables,保存退出。
3.保存后在控制面板服务里面重启mySQL
4.然后运行cmd
输入mysql -u root -p就可以不用密码登录了,出现password:的时候直接回车可以进入。

1.进入mysql数据库:
mysql> use mysql;Database changed
2.给root用户设置新密码,蓝色部分自己输入:mysql> update user set password=password("123456") where user="root";Query OK, 1 rows affected (0.04 sec)Rows matched: 1 Changed: 1 Warnings: 0
3.刷新数据库mysql> flush privileges;Query OK, 0 rows affected (0.01 sec)
4.退出mysql:mysql> quitBye
PS:123456为新密码,用户可根据自己需要修改成自己的密码;

6.改好之后,再修改一下my.ini这个文件,把我们刚才加入的"skip-grant-tables"这行删除,保存退出再重启mysql服务就可以了。

在第五大步的第2小步出现了问题

mysql> use mysql;Database changed
Database changed
-> mysql> update user set password=password("123456") where user="root";Query OK, 1 rows affected (0.04 sec)Rows matched: 1 Changed: 1 Warnings: 0
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Database changed
mysql> update user set password=password("123456") where user="' at line 1
->
这个错误不知道什么原因,求大神

4个回答

感觉有点奇怪,错误里面说你的语句有语法错误,是使用了"Database changed".但是你修改密码的语句怎么会有这个东西,你不会又打了一遍吧?

Database changed
mysql> update user set password=password("123456") where user="
它把你的表达式识别为这个,你自己找找原因吧。正确的应该是
update user set password=password("123456") where user="root"

你已经进入了那个数据库里了,就会出现Database changed的,你的SQL更新的语法有误,检查一下吧。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问