显示错误:1.Can't connect to MySQL server on localhost (10061)”
2.Access denied for user 'root'@'localhost' (using password: YES)。
解决方法:第一个问题根本原因就是mysql没有启动。
1.切换到mysql安装目录下的bin文件夹,命令行运行"mysqld --install"(找不到目录就去下everything.exe搜索mysql.exe)
输入 :
cd C:\Program Files\MySQL\MySQL Server 5.7\bin
mysqld --install
返回:(可能你显示已经成功安装了)
Service successfully installed.
2.关闭,再重启
输入:net stop mysql
net start mysql
3.现在登录输入密码再试试
输入:mysql -uroot -p
再输入密码
4.不行的话再来这样:先关闭再初始化密码再进去
输入:net start mysql
mysqld --initialize --user=root --console
返回有一行注意:
[Note] A temporary password is generated for root@localhost: xxxxxxx
这个后面跟着就是密码,一定要记住,所有符号都是,包括>,?(被小坑过)
5.重新重启mysql 并输入密码
输入:net start mysql
mysql -uroot -p
6.如果显示这个问题: Access denied for user 'root'@'localhost' (using password: YES)。先关闭mysql,再改变my.ini文件(就在安装目录下,找不到还是推荐eveything百度就有,专门用来找各种文件的)
在my.ini文件中的mysqld条目最后一行添加
skip-grant-tables
7.以管理员身份打开cmd,切换到MySQL的bin目录,关闭mysql(上面教过了)后
输入:(要用自己的路径)
mysqld --defaults-file="F:\MySQL\my.ini" --console --skip-grant-tables
返回
证明成功了。
重启再等于就应该可以了,否则还是你的密码是错误的,那就再重置密码吧,上文提到过。
8.登录过后出现第一个问题,应该是现在密码为空,重新设置一个密码
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before
输入:我把密码设置为123456
alter user 'root'@'localhost' identified by '123456';
现在就可以关闭数据库,把my.ini文件中我们最后一行新添加的代码删除了,保存后再重启,这些就没问题了。
可能会遇见的错误:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual ········
这就是语法错误,检查语句
补充一些数据库常用的指令:
查看当前使用的数据库:
mysql>select database();
mysql>status;
mysql>show tables;
mysql>show databases;//可以查看有哪些数据库,返回数据库名(databaseName)
mysql>use databaseName; //更换当前使用的数据库
mysql>show tables; //返回当前数据库下的所有表的名称
或者也可以直接用以下命令
mysql>show tables from databaseName;//databaseName可以用show databases得来
mysql查看表结构命令,如下:
desc 表名;
show columns from 表名;
或者
describe 表名;
show create table 表名;
或者
use information_schema
select * from columns where table_name='表名';
查看警告:
Rows matched: 1 Changed: 0 Warnings: 1
mysql> show warnings;