重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
镜像下载、域名解析、时间同步请点击阿里巴巴开源镜像站
MariaDB 是一个开源的关系型数据库管理系统,向后兼容,可替代 MySQL。本文将会讲解如何在 Ubuntu 20.04 上安装和维护 MariaDB。
一、前提条件
你需要拥有 Ubuntu 服务器的管理权限,或者以 root 身份 或者以拥有 sudo 权限的用户身份登录系统。
二、在 Ubuntu 上安装 MariaDB
Ubuntu 软件源仓库中的 MariaDB 最新版是 10.3,可以运行下面的命令进行安装:
sudo apt update sudo apt install mariadb-server
安装完成后 ,MariaDB 服务将会自动启动。输入以下命令验证数据库服务器是否正在运行:
sudo systemctl status mariadb
输出结果将会显示服务已经启用,并且正在运行:
...
三、维护 MariaDB
MariaDB 服务器有一个脚本叫做mysql_secure_installation,通过它你可以很容易提高数据库服务器的安全性。
不带参数运行脚本:
sudo mysql_secure_installation
根据脚本提示输入 root 密码:
Enter current password for root (enter for none):
由于没有设置 root 密码,所以这里仅仅输入回车"Enter"即可。
接下来,会提示是否为 MySQL root 用户设置密码:
Set root password? [Y/n] n
输入n。在 Ubuntu 上, MariaDB 用户默认使用auth_socket进行鉴权。这个插件会检查启动客户端的本地系统用户是否和指定的 MariaDB 用户名相匹配。
下一步,系统会要求移除匿名用户,限制 root 用户访问本地机器,移除测试数据库,并且重新加载权限表。如下所示,你只需要输入Y:
Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
四、以 root 身份登录
如果想要在终端命令行和 MariaDB 服务器进行交互,可以使用mysql客户端工具或者mariadb。这个工具被作为 MariaDB 服务器软件包的依赖软件被安装。
这个auth_socket插件将会通过 Unix socket 文件验证用户来连接localhost。这就意味着你不能通过提供密码来验证 root。
想要以 root 用户名登录 MariaDB 服务器,需要输入以下命令:
sudo mysql
执行成功后会展示 MariaDB shell,如下所示:
Welcome to the MariaDB monitor. Commands end with ; or \\g. Your MariaDB connection id is 61 Server version: 10.3.22-MariaDB-1ubuntu1 Ubuntu 20.04 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type \'help;\' or \'\\h\' for help. Type \'\\c\' to clear the current input statement. MariaDB [(none)]> Bye
如果想使用第三方程序(例如 phpMyAdmin),以 root 身份登录你的 MariaDB 服务器,有以下两种方式可以选择。
第一个是将鉴权方法从auth_socket修改为mysql_native_password。你可以通过运行下面的命令实现:
ALTER USER \'root\'@\'localhost\' IDENTIFIED WITH mysql_native_password BY \'very_strong_password\'; FLUSH PRIVILEGES;
第二个推荐的方式就是创建一个管理员用户,可以访问所有的数据库:
GRANT ALL PRIVILEGES ON *.* TO \'administrator\'@\'localhost\' IDENTIFIED BY \'very_strong_password\';
五、总结
至此,我们已经向你展示了如何在 Ubuntu 20.04 上安装 MariaDB。现在你的数据库服务器应该已经上线,并且正在运行了。