MySQL安装后使用问题

更细: 关于8.0。参考链接:https://blog.csdn.net/qq_42348937/article/details/86326470#ps

最新更新:之前的方法貌似修改错了,目前也不知道错哪了,只是连接不上数据库。最新方法:

 

在MySQL的使用过程中,我们可能会碰到“Access denied for user 'root'@'localhost' (using password:YES)”的问题,那么接下来我们就来解决它。

  经过我的百度查询最后得出结论:出现这种错误有两种可能,一是MySQL的root用户的密码错误,二是权限不够的问题。通常解决办法是修改密码。。。

  由于我使用的是Windows系统,所以方法也是Windows系统的修改方法:

  1、开始 → 搜索栏里面输入cmd → 右键cmd.exe选择以管理员的身份运行(亦可以在C:\Windows\System32目录下找到这个cmd.exe,右键,以管理员身份运行)

  2、输入net stop mysql停止MySQL服务

  3、输入命令行来到mysql的bin目录下,输入下列粗体命令

  D:\MySQL\bin>mysqld  --defaults-file="D:\MySQL\my.ini" --console --skip-grant-tables

  等一下,显示出以下结果说明MySQL启动:

  170215 22:26:09 [Warning] The syntax '--log' is deprecated and will be removed  inMySQL 7.0. Please use '--general_log'/'--general_log_file' instead.
  170215 22:26:09 [Warning] The syntax '--log_slow_queries' is deprecated and will be removed in MySQL 7.0. Please use '--slow_query_log'/'--  slow_query_log_file' instead.
  170215 22:26:09 [Warning] The syntax '--log' is deprecated and will be removed in MySQL 7.0. Please use '--general_log'/'--general_log_file' instead.
  170215 22:26:09 [Warning] The syntax '--log_slow_queries' is deprecated and will be removed in MySQL 7.0. Please use '--slow_query_log'/'--slow_query_log_file' instead.
  170215 22:26:09 [ERROR] The update log is no longer supported by MySQL in version 5.0 and above. It is replaced by the binary log. Now starting MySQL with --log-bin='' instead.
  170215 22:26:09  InnoDB: Started; log sequence number 0 324221
  170215 22:26:09 [Note] mysqld: ready for connections.Version: '5.1.33-community-log'  socket: ''  port: 3306  MySQL Community Server (GPL)

  4、再以管理员的身份打开一个cmd.exe,输入命令行来到mysql的bin目录下,输入:mysql -uroot mysql

  5、进入mysql之后,输入命令行修改密码:

  mysql>update user set authentication_string=password('123456') where user='root';

  6、刷新权限:mysql>flush privileges;

  7、退出mysql:mysql> quit;

  8、关闭MySQL:D:\MySQL\bin>mysqladmin shutdown(出现错误,则:mysqladmin -uroot -p shutdown 然后输入新密码)

  9、至此修改密码完成,可以输入命令行:net start mysql 启动MySQL服务,mysql -uroot -p ,输入密码就可以进入mysql了。

命令中的具体细节目前还不清楚。严格按照这个方法来就行了。这个操作修改了原本的密码和。使用快捷方式打开的密码也修改了。

 

------------------------------------------分割线---------------------------------------------------------------------------------

 

MySQL数据库安装成功后,可以使用命令行工具启动mysql。

 

在cmd中执行:c:\Users\Adminidtrator>net start mysql57        //启动数据库

数据库的启动也可以在:计算机->管理->服务和应用程序->服务->mysql57来启动和关闭;

启动成功后,执行:c:\Users\Adminidtrator>mysql -u admin -p

                                Enter password:*******

此时,可能会提示:ERROR 1045 (28000): Access denied for user 'admin'@'localhost' (using password: YES)错误。错误原因有人说是权限问题(具体不清楚)。

 

这问题出现就是进不去Mysql,那也就无法操作用户和密码。MySQL提供了一种免去密码校验进去数据库的方式,我们先使用这种方式进入数据库中,然后将默认的密码换掉。具体操作如下:

c:\Users\Adminidtrator>net stop mysql57        //关闭数据库

    windows下找到my.ini文件(默认在Program Data文件夹中,在windows下默认为隐藏文件夹,设置隐藏文件可见)。进入MySQL\MySQL Server 5.7\my.ini

MySQL安装后使用问题_第1张图片

查找mysqld,在mysqld项下加入skip-grant-tables(没有前面的#,#相当于注释。修改密码成功后加上#或者删除这一句)。

修改成功后保存。

在cmd中开启mysql:c:\Users\Adminidtrator>net start mysql57

系统会提示:MySQL57 服务正在启动 .

                    MySQL57 服务已经启动成功。

如果提示启动失败,可能是my.ini文件修改错误,请严格对照。

之后执行:

mysql>create user 'admin'@'localhost' identified by '123456';

会提示:The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

意思是在这个选项下运行,这个命令不行。

现在需要:

mysql>flush privileges;

再执行:

mysql>create user 'admin'@'localhost' identified by '123456';

系统会提示成功。

现在结束mysql57,然后在my.ini文件中删除或注释掉加入的选项。再重新启动mysql57。再执行:

c:\Users\Adminidtrator>mysql -u admin -p

Enter password:******        //刚刚设置的密码:123456

就成功进入mysql。

 

//这只是使用cmd命令行启动。其实可以使用MySQL 5.7 Command Line Client - Unicode应用程序快捷方式启动mysql。

(这里修改密码好像不影响使用快捷方式启动?暂且不管)

你可能感兴趣的:(MySql,数据库)