mysql数据库连接失败常见问题小结

 更新时间:2023年06月25日 10:15:58   作者:weixin_44439301  
你有没有碰到过mysql数据库连接不上的问题呢?很多的小伙伴表示,经常会时不时的出现这些问题,下面这篇文章主要给大家介绍了关于mysql数据库连接失败常见问题的相关资料,需要的朋友可以参考下

错误提示:1045-Access denied for user ‘root‘ ‘localhost‘(using password: YES)

1、找到mysql的my.ini文件,在mysqld关键字下面添加skip-grant-tables,如下图所示:

该命令作用是跳过授权表,也就是输入任意字符账号密码都可以进入mysql看到所有数据表。

当忘记账号密码时可以使用改命令修改密码,但是要随用随关,重启mysql,不然服务器上会有很大的风险。

2、重启MySQL服务

3、在终端中输入mysql -u root mysql,连接数据库

4、修改密码

在终端进入中输入:

update user set password=password("123456") where user="root";

如果有报错“ERROR 1054 (42S22): Unknown column 'password' in 'field list'”

那么就输入:update user set authentication_string=password('123456') where user='root';

输入exit退出,再重新连接数据,即可连接成功。

mysql数据库只能本机连接,不能远程链接

 进入mysql数据库
   $mysql -u root -p
   >use mysql;
 1.>select host,user from user; //查看用户
    MySQL建用户的时候会指定一个host,默认是127.0.0.1/localhost只能本机访问;
    其它机器用这个用户帐号访问会提示没有权限,host改为%,表示允许所有机器访问。
 2.设置host为%
   >update user set host='%' where user = 'root';
    %为任意用户都有权限连接,localhost为只能本机连接,配置完host为%这一步就已经能外网访问了
 3.授权用户具体权限
   >grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
   >flush privileges;//刷新权限
 注意: 一定要重启mysql: # systemctl restart mysqld

qiqushuge_comy用户有两个,针对不同的针对不同的主机来控制用户的访问的。授权的时候grant all privileges on *.* to 'qiqushuge_com'@'localhost' identified by '123456' with grant option;

  • all privileges:表示将所有权限授予给用户。也可指定具体的权限,如:SELECT、CREATE、DROP等。
  • on:表示这些权限对哪些数据库和表生效,格式:数据库名.表名,这里写“*”表示所有数据库,所有表。如果我要指定将权限应用到test库的user表中,可以这么写:test.user
  • to:将权限授予哪个用户。格式:”用户名”@”登录IP或域名”。%表示没有限制,在任何主机都可以登录。比如:”yangxin”@”192.168.0.%”,表示yangxin这个用户只能在192.168.0IP段登录
  • identified by:指定用户的登录密码
  • with grant option:表示允许用户将自己的权限授权给其它用户

可以使用GRANT给用户添加权限,权限会自动叠加,不会覆盖之前授予的权限,比如你先给用户添加一个SELECT权限,后来又给用户添加了一个INSERT权限,那么该用户就同时拥有了SELECT和INSERT权限。

查看数据库授权的方法:

SHOW GRANTS FOR 'root'@'localhost';

宝塔没有放行端口,云服务器没有添加安全组

在宝塔安全里添加端口规则,放行数据库默认端口3306

在服务器阿里云、腾讯云等放行端口3306

总结

到此这篇关于mysql数据库连接失败常见问题的文章就介绍到这了,更多相关mysql数据库连接失败内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 一文带你了解MySQL之约束

    一文带你了解MySQL之约束

    在SQL标准中,一共规定了6种不同的约束,包括非空约束,唯一约束和检查约束等,而在MySQL中是不支持检查约束的,所以这篇文章先对其余5种约束做一个详解和练习,需要的朋友可以参考下
    2023-06-06
  • MySQL导出所有Index和约束的方法

    MySQL导出所有Index和约束的方法

    这篇文章主要介绍了MySQL导出所有Index和约束的方法,非常实用的技巧,需要的朋友可以参考下
    2014-08-08
  • MySQL之主键索引排序失效问题

    MySQL之主键索引排序失效问题

    这篇文章主要介绍了MySQL之主键索引排序失效问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • MySQL的Replace into 与Insert into on duplicate key update真正的不同之处

    MySQL的Replace into 与Insert into on duplicate key update真正的不同

    今天听同事介绍oracle到mysql的数据migration,他用了Insert into ..... on duplicate key update ...,我当时就想怎么不用Replace呢,于是回来就仔细查了下,它们果然还是有区别的
    2014-02-02
  • MySQL判断时间段是否重合的两种方法

    MySQL判断时间段是否重合的两种方法

    这篇文章介绍了MySQL判断时间段是否重合的两种方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • mysql不支持group by的解决方法小结

    mysql不支持group by的解决方法小结

    下载安装的是最新版的mysql5.7.x版本,默认是开启了 only_full_group_by 模式的,但开启这个模式后,原先的 group by 语句就报错,然后又把它移除了
    2020-02-02
  • 将MySQL去重操作优化到极致的操作方法

    将MySQL去重操作优化到极致的操作方法

    这篇文章主要介绍了如何将MySQL去重操作优化到极致,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • 浅谈mysql 针对单张表的备份与还原

    浅谈mysql 针对单张表的备份与还原

    下面小编就为大家带来一篇浅谈mysql 针对单张表的备份与还原。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • 简单了解MySQL SELECT执行顺序

    简单了解MySQL SELECT执行顺序

    MySQL数据据库中我们经常使用SQL SELECT语句来查询数据,那么关于它的执行顺序,下面小编来带大家简单了解一下
    2019-05-05
  • MySql状态查看方法 MySql如何查看连接数和状态?

    MySql状态查看方法 MySql如何查看连接数和状态?

    如果是root帐号,你能看到所有用户的当前连接。如果是其它普通帐号,只能看到自己占用的连接
    2012-11-11

最新评论