ubuntu 14.04 安装mysql server的分支MariaDB Server初级教程

时间:2023-12-11 19:50:14

序,MariaDB Server是Mysql的fork版本,与Mysql完美兼容,mysql在10年被sun收购,后sun被oracle收购,后mysql的创建者及项目长期技术带头人之一的Michael ‘Monty’ Widenius。Monty和他的团队创建了Mysql的一个fork版本并命名为MariaDB。

MariaDB是一个开源数据库且100%与MySQL兼容,目标是替代MySQL数据库

默认上MariaDB的包并没有在Ubuntu仓库中。要安装MariaDB,我们首先要设置MariaDB仓库。

设置 MariaDB 仓库

  1. $ sudo apt-get install software-properties-common
  2. $ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
  3. $ sudo add-apt-repository 'deb http://sfo1.mirrors.digitalocean.com/mariadb/repo/10.0/ubuntu trusty main'

安装 MariaDB :

  1. $ sudo apt-get update
  2. $ sudo apt-get install mariadb-server

在安装中,你会被要求设置MariaDB的root密码。

ubuntu 14.04 安装mysql server的分支MariaDB Server初级教程

从命令行连接到MariaDB :

  1. linuxtechi@mail:~$ mysql -uroot -p
  2. Enter password:
  3. Welcome to the MariaDB monitor. Commands end with ; or \g.
  4. Your MariaDB connection id is 40
  5. Server version: 10.0.14-MariaDB-1~trusty-log mariadb.org binary distribution
  6. Copyright (c) 2000, 2014, Oracle, SkySQL Ab and others.
  7. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  8. MariaDB [(none)]>

MariaDB 服务

  1. $ sudo /etc/init.d/mysql stop
  2. $ sudo /etc/init.d/mysql start

以上只是在Ubuntu上装完MariaDB,下面要设置MariaDB允许远程访问

1. 如果Ubuntu有设置防火墙或者iptables规则的话,请自行打开

2. 3306端口是不是没有打开?

使用nestat命令查看3306端口状态:

~# netstat -an | grep 3306

tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

从结果可以看出3306端口只是在IP 127.0.0.1上监听,所以拒绝了其他IP的访问。

    解决方法:修改/etc/mysql/my.cnf文件。打开文件,找到下面内容:

# Instead of skip-networking the default is now to listen only on
    # localhost which is more compatible and is not less secure.
    bind-address  = 127.0.0.1

把上面这一行注释掉或者把127.0.0.1换成合适的IP,建议注释掉。

重新启动后,重新使用netstat检测:

~# netstat -an | grep 3306
    tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN

3. 现在使用下面命令测试:

     ~# mysql -h 192.168.0.101 -u root -p
    Enter password:
    ERROR 1130 (00000): Host 'Ubuntu-Fvlo.Server' is not allowed to connect to this MySQL server

    结果出乎意料,还是不行。

    解决方法:原来还需要把用户权限分配各远程用户。

    登录到mysql服务器,使用grant命令分配权限

    mysql> grant all on *.* to 你的用户名如root@'%' identified by '你的密码';

    完成后使用mysql命令连接,提示成功,为了确保正确可以再远程登陆测试一下。