• centos7使用MariaDB(转)


    转载文章:https://blog.csdn.net/zwkkkk1/article/details/78444581?locationNum=10&fps=1

    最近使用centos7,php nginx都采用编译安装,没用到数据库之前都用得好好的,今日想用的时候居然发现没有mysql服务。而centos 7之后开始改用MariaDB。这是什么鬼?

    大致了解了下:https://blog.csdn.net/H12KJGJ/article/details/79616761

    反正就是为了防止mysql以后的完全闭源而设计的一种mysql的替代品。

    目前一般centos7的新主机都是自带MariaDB

    安装命令

    yum -y install mariadb mariadb-server

    启动MariaDB

    systemctl start mariadb

    设置开机启动

    systemctl enable mariadb

    设置密码

    mysqladmin -u root password 'root'

    这样mariaDB就能在本机运行了,接下来要做的是,能够远程连接。(https://blog.csdn.net/u013474104/article/details/78465697

    1.直接修改表

    命令行进入mysql,找到mysql数据库下的user表

    mysql >select user,host from user ;

    会发现host并没有支持所有(%)

    执行命令:

    mysql>update user set host='%' where user='root' ;

    此时会报错Duplicate entry '%-root' for key 'PRIMARY'

    先忽略此错误,再次查看:

    mysql >select user,host from user ;

    发现已经有%:

    2.授权法:

    参考文章:https://blog.csdn.net/u013474104/article/details/78465697

    最后别忘了:flush privileges。

    这样就可以通过navicat等连接数据库了

    NOTE:可能遇到的问题

    远程工具可连接上,在本地命令行mysql -uroot不用密码就可以连接上,但是不具有root权限:

    原因其实很简单,mysql中一个用户名为空的访问本地权限的字段,所有登陆时优先匹配了这一条,就无法登陆了。

    删除mysql.user表中 user字段为空的数据即可,然后flush privileges,就能正常登录了。

  • 相关阅读:
    MySQL数据库之索引
    python面向对象编程
    linux端口占用
    lintcode
    java基础
    lintcode
    linux 常用命令
    Docker & Kubernates
    angular preparation
    java 命令行
  • 原文地址:https://www.cnblogs.com/lonsn/p/10716297.html
Copyright © 2020-2023  润新知