如何在Debian 11安装MariaDB
MariaDB是一个开放源代码,多线程关系型数据库管理系统,是MySQL的向后兼容替代品。它由MariaDB Foundation进行维护和开发
MariaDB是一个开放源代码,多线程关系型数据库管理系统,是MySQL的向后兼容替代品。它由MariaDB Foundation进行维护和开发,其中包括MySQL的某些原始开发人员。
在本教程中,将向您展示如何从官方MariaDB存储库安装最新版本的MariaDB。在撰写本文时,可从官方MariaDB存储库中获得的MariaDB最新版本10.9。
如果要安装MySQL而不是MariaDB,请查看如何在Debian 11安装MySQL教程。在继续学习本教程之前,请确保您以root或者具有sudo权限的用户登录。
在继续下一步之前,您应该访问MariaDB存储库页面,并检查是否有可用的新版本。要在Debian 11服务器安装MariaDB 10.9,请执行以下步骤。
首先使用curl命令下载并导入MariaDB GPG密钥到您的系统。
导入GPG密钥后,然后运行sudo sh -c "echo 'deb https://mirrors.aliyun.com/mariadb/repo/10.9/debian bullseye main' >>/etc/apt/sources.list"
命令将MariaDB添加到系统的source.list文件。
如果你需要安装其它版本的MariaDB版本的数据库,只需要改变URLhttps://mirrors.aliyun.com/mariadb/repo/10.9/
debian
的版本号10.9为你需要的版本号即可。
现在添加了存储库,接下来安装MariaDB,要能够从MariaDB存储库安装软件包,您需要先更新软件包列表,运行sudo apt update
命令。
当运行sudo apt install mariadb-server
时,安装过程可能会提示你输入密码,我们建议你留空,我们将在下一节中创建专用管理用户。
安装完成后,MariaDB将作为systemd服务自动启动,您可以通过运行命令sudo systemctl status mariadb
查看MariaDB服务的状态。
你也可以运行mysql -V
命令并打印出MariaDB服务器的版本来验证安装,命令将会输出。
mysql Ver 15.1 Distrib 10.9.2-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
sudo apt install software-properties-common
sudo apt purge mysql-server mysql-common
sudo apt autoremove
sudo apt-get install apt-transport-https curl
sudo curl -o /etc/apt/trusted.gpg.d/mariadb_release_signing_key.asc 'https://mariadb.org/mariadb_release_signing_key.asc'
sudo sh -c "echo 'deb https://mirrors.aliyun.com/mariadb/repo/10.9/debian bullseye main' >>/etc/apt/sources.list"
sudo apt update
sudo apt install mariadb-server
sudo systemctl status mariadb
● mariadb.service - MariaDB 10.9.3 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─migrated-from-my.cnf-settings.conf
Active: active (running) since Fri 2022-09-30 06:36:57 +0430; 16s ago
连接MariaDB
当MariaDB安装完成后,你可能会想运行命令mysql -u root -p
登录到MariaDB服务器。
如果你登录到Debian的用户不是root用户你将不能访问MariaDB服务器。如果你尝试使用密码登录也将被拒绝连接,因为在安装的过程我们并没有设置密码。
你将会收到类似于这样的消息(28000): Access denied for user 'root'@'localhost' (using password: YES)或者ERROR 1045 (28000): Access denied for user 'root'@'localhost'。
这意味着您无法通过提供密码来以root用户连接到MariaDB服务器。但你可以通过命令sudo mysql
连接到MariaDB服务器。
sudo mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
mysql>
如果您要使用外部程序,例如phpMyAdmin。以root用户连接到MariaDB服务器,则需要创建一个新的专用管理用户,该用户可以访问所有数据库。
GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
FLUSH PRIVILEGES;
当创建新的专用用户后,你可以通过新的管理用户使用密码的方式登录,你可以在本地计算机上运行命令mysql -u admin -p
进行测试。
如果你需要配置MariaDB用户的远程访问,可参考我们的教程如何允许MySQL数据库服务器的远程连接。
结论
现在您的MariaDB服务器已启动并正在运行,并且您知道如何从命令行连接到MariaDB服务器。