zoukankan      html  css  js  c++  java
  • [日常填坑]mysql登陆后只出现information_schema和test两个数据库

    在服务器只能使用【无密码】登陆,即

    要么直接mysql进入数据库,要么mysql -u root -p,然后不写密码回车进入数据库(但是之前一开始有设置密码了!!!之前是按这个步骤来的),

    然后,登陆后只能看到information_schema和test两个数据库,而且没了很多权限。

    另外,能在本地连接远程服务器数据库可以使用root和密码登陆连接,能看到mysql数据库的user表。

    也就是说,在服务器的数据库的root已经失去了超级权限!!!

    原因:

    一开始安装mysql的时候没有把localhost的空用户删除。

    导致root有两种登录方式,一个是基于localhost的,另一个就是在其它任意主机登录的,

    你设置的密码是基于IP地址登录时的密码,而你在本机运行mysql -u root -p时,默认检查的是localhost方式

    如何解决:

    解决具体操作步骤:

    第一种方法:

    在服务器中,

    先关闭mysql:service mysqld stop

    然后,mysqld_safe --skip-grant-tables

    (如果是mariadb,则使用systemctl restart mariadb.service)

    打开mysql

    删掉已经存在了host为localhost的记录,则先(一定要一开始就!!!)删除该记录,delete from user where host='localhost';

    第二种方法:

    如果你已经在本地主机远程连接数据库的root用户,

    那么直接在mysql.user里面删除localhost的空用户

    然后再服务器上面重启数据库服务即可

  • 相关阅读:
    利用JavaScriptCore实现以下简单的功能(平方和)
    UIScrollView 实现比例缩放
    iOS 本地加载js文件
    UIScrollView现实自动循环滚动
    UIScrollView现实循环滚动
    swift
    swift
    swift
    swift
    swift
  • 原文地址:https://www.cnblogs.com/hoanfir/p/9053540.html
Copyright © 2011-2022 走看看