zoukankan      html  css  js  c++  java
  • 解决beego在ubuntu下连接mysql与重置mysql密码

    解决这个时把我吓坏了!!!

    报错如下

    register db Ping `default`, Error 1698: Access denied for user 'root'@'localhost'
    

    开始我是想可能是ubuntu的原因,也可能是mysql8.0的原因吧,不管怎样,我讲一下解决这个问题的经历

    开始我是找到个解决办法

    mysql> USE mysql;
    mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root';
    mysql> FLUSH PRIVILEGES;
    mysql> exit;
    
    $ service mysql restart
    
    

    这样就把密码弄没了,即无密码登陆,先说明一下,这个方法是可以解决上面抱错的问题的

    但是我在输命令时输错了,哪里输入错了就不写了,反正导致的结果就是报错连不上数据库,用原来的密码也登陆不上数据库,我想,完了,密码坏掉了,数据库进不去了

    然而我还是找到了解决办法,用重置初始密码的方式登陆数据库,然后在执行一次上面的操作,用来覆盖原来的错误操作,这样,整个总算是解决了。

    我是这样做的:

    1.进入目录:cd /etc/mysql,查看debian.cnf文件,使用这个文件里的user和password登陆,这样就登陆了进去了并可以进行一系列操作

    下面谈的就与beego连接数据库无关了,而是如何更默认密码

    2.进入mysql数据库user mysql

    3.进行密码设置执行下列操作

    mysql> update user set authentication_string=PASSWORD("自定义新密码") where user='root';
    
    mysql> update user set plugin="mysql_native_password";
    
    mysql> flush privileges;
    
    
    

    最后退出数据库,并重启数据库

    mysql> exit;
    
    $ service mysql restart
    

    这个问题让我想起了我以前解决windows上egg-mysql连接高版本mysql,也就是下面这段话:

    博客地址

    mysql8.0 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决此问题方法有两种,一种是升级客户端驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password。

  • 相关阅读:
    JavaScript 数组
    Function类型
    javascript面向对象(一)
    javascript变量的作用域
    登陆验证
    注册验证
    php类
    二叉搜索树的 查询最小值
    二叉 搜索树查找最大值
    二叉搜索树 中查找是否存在该值
  • 原文地址:https://www.cnblogs.com/childking/p/14015785.html
Copyright © 2011-2022 走看看