MariaDB 是一个开源多线程的关系数据库管理系统,是 MySQL 的替代品。 MariaDB 是 DebianMySQL 的默认替换方案。

本教程介绍如何在 Debian 12 上安装 MariaDB。

准备条件

1、一台安装了 Debian 12 的 VPS 虚拟机 (推荐您购买一台阿里云VPS或者腾讯云VPS虚拟主机,如果你更喜欢国外服务器,推荐你尝试Vultr上的VPS,注册即送$50美元体验,性价比非常高) ,当然你自己电脑或者虚拟机中也可以。

2、如果使用 VPS, 基于安全考虑,建议使用非 root 账号,可以在 Debian 12 上创建一个具有sudo权限的账号

安装 MariaDB

在撰写本文时,Debian main 中提供的最新 MariaDB 版本是版本 10.11.4,所以你可以直接在命令行中使用命令安装。

首先,以 root 身份或用户使用 sudo 权限执行以下步骤,在 Debian 12 上安装 MariaDB:

在命令终端中执行如下命令进行安装 MariaDB 数据库。

1、更新软件包

sudo apt update
sudo apt install mariadb-server

2、安装完成,数据库服务会自动启动,可通过如下命令检查服务是否正常。

sudo systemctl status mariadb

你会看到类似如下的输出:

● mariadb.service - MariaDB 10.11.4 database server
    Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; preset: enabled)
    Active: active (running) since Sun 2024-01-14 13:16:27 CST; 22h ago
      Docs: man:mariadbd(8)
            https://mariadb.com/kb/en/library/systemd/
  Main PID: 5224 (mariadbd)
    Status: "Taking your SQL requests now..."
    Tasks: 8 (limit: 2235)
    Memory: 161.6M
      CPU: 1.791s
    CGroup: /system.slice/mariadb.service
            └─5224 /usr/sbin/mariadbd

加固 MariaDB 安全

MariaDB 附带了一个脚本,可以帮助您提高安装的安全性。 要在终端中启动脚本类型 mysql_secure_installation:

sudo mysql_secure_installation

脚本执行过程中,系统将提示您为 root 帐户设置密码,删除匿名用户,限制 root 用户对本地计算机的访问权限并删除测试数据库。

类似如下:

...
Enter current password for root (enter for none):
...
Set root password? [Y/n] Y
New password: 
Re-enter new password: 
...
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
...
Thanks for using MariaDB!

配置选项完成后,脚本将重新加载权限表,确保更改立即生效。

所有步骤都会详细解释,如自己无特殊个人要求,建议对所有问题选择 “Y”(是)。

认证方法

默认情况下,MariaDB root 用户使用 unix_socket 身份验证插件,该插件在调用 mysql 客户端工具时检查有效用户 ID。

这意味着只有在以系统 root 身份调用 mysql 命令或将 sudo 添加到命令时,才能以 root 身份连接到 MariaDB 服务器。

为了提高安全性,建议保留默认的身份验证插件,并允许 root 用户仅通过 Unix 套接字进行身份验证。

如果要将根身份验证更改为经典身份验证,请登录 MariaDB 服务器,在命令行终端中执行:

sudo mysql

运行以下SQL语句以更改身份验证:

ALTER USER 'root'@'localhost' IDENTIFIED VIA mysql_native_password;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_root_passwd';

您现在可以使用新密码连接到 MariaDB 服务器:

mysql -u root -p

更改身份验证插件还允许您从外部程序(如phpMyAdmin)以 root 用户身份登录

写在最后

在本教程中,我们向您展示了如何在 Debian 12 服务器上安装 MariaDB 数据库

如果您有任何问题或反馈,欢迎随时发表评论。

如何在 Debian 12 上安装 MariaDB的更多相关文章

  1. 如何在Debian 9上安装和使用Docker

    介绍 Docker是一个简化容器中应用程序进程管理过程的应用程序.容器允许您在资源隔离的进程中运行应用程序.它们与虚拟机类似,但容器更便携,更加资源友好,并且更依赖于主机操作系统. 在本教程中,您将在 ...

  2. 如何在 Debian 9 上安装和使用 Docker

    Docker 是一个容器化平台,允许您快速构建,测试和部署应用程序,作为便携式,自给自足的容器,几乎可以在任何地方运行. Docker 是容器技术的事实上的标准,它是 DevOps 工程师及其持续集成 ...

  3. [译]How to Install Node.js on Ubuntu 14.04 如何在ubuntu14.04上安装node.js

    原文链接为 http://www.hostingadvice.com/how-to/install-nodejs-ubuntu-14-04/ 由作者Jacob Nicholson 发表于October ...

  4. Redis进阶实践之三如何在Windows系统上安装安装Redis(转载)

    Redis进阶实践之三如何在Windows系统上安装安装Redis 一.Redis的简介 Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括 ...

  5. Redis进阶实践之二如何在Linux系统上安装安装Redis(转载)(2)

    Redis进阶实践之二如何在Linux系统上安装安装Redis 一.引言 上一篇文章写了“如何安装VMware Pro虚拟机”和在虚拟机上安装Linux操作系统.那是第一步,有了Linux操作系统,我 ...

  6. 如何在VMware软件上安装Red hat(红帽)Linux6.9操作系统

    本文介绍如何在VMware软件上安装Redhat(红帽)Linux6.9操作系统 首先需要准备 VMware软件和Redhat-Linux6.9操作系统的ISO系统镜像文件包(这里以linux6.9为 ...

  7. 在MacOS 10.12上安装Tomcat8.5

    在MacOS 10.12上安装Tomcat8.5 原文链接:https://wolfpaulus.com/journal/mac/tomcat8/ Context 已安装Java,使用java -ve ...

  8. GPT分区基础知识及如何在GPT分区上安装WIN7

    大硬盘和WIN8系统,让我们从传统的BIOS+MBR模式升级到UEFI+GPT模式,现在购买的主流电脑,都是预装WIN8系统,为了更好的支持2TB硬盘,更快速的启动win8,预装系统都采取了GPT分区 ...

  9. 如何在Linux(Ubuntu)上安装Redmine

    费话就不多说了,本文主要描述如何在如何在Linux(Ubuntu)上安装Redmine.通过这篇文章你将了解如下内容. TL;DR 在Linux(Ubuntu)上安装Redmine的基本流程 配置ph ...

  10. 如何在windows2008/2012上安装启明星系统。

    启明星系统提供多种安装方式.安装包里自带了setup.exe.每个程序的 install下有在线安装(例如请假应用程序为book,则默认为 http://localhost/book/install ...

随机推荐

  1. Stream API学习笔记

    Java8 中Stream API介绍   Stream 使用一种类似用 SQL 语句从数据库查询数据的直观方式来提供一种对 Java 集合运算和表达的高阶抽象.这种风格将要处理的元素集合看作一种流, ...

  2. Java并发(二十)----synchronized原理进阶

    1.小故事 故事角色 老王 - JVM 小南 - 线程 小女 - 线程 房间 - 对象 房间门上 - 防盗锁 - Monitor-重量级锁 房间门上 - 小南书包 - 轻量级锁 房间门上 - 刻上小南 ...

  3. Selenium-ActionChains动作链(针对鼠标、滚轮等操作

    https://www.selenium.dev/documentation/webdriver/actions_api/ 注意:对于滚轮的操作,只支持chrome浏览器,且selenium版本在4. ...

  4. 被面试官PUA了:创建索引时一定会锁表?

    索引主要是用于提高数据检索速度的一种机制,通过索引数据库可以快速定位到目标数据的位置,而不需要遍历整个数据集,它就像书籍的目录部分,有它的存在,可以大大加速查询的效率. 那么问题来了:在创建索引时一定 ...

  5. 开源:Taurus.DTC 微服务分布式事务框架,支持 .Net 和 .Net Core 双系列版本

    前言: 在经过1年多的深思,十几年的框架编写技术沉淀下,花了近一个月的时间,终于又为 .Net 及 .Net Core 的微服务系列框架贡献当中的一个重要组件. 1.开源地址: https://git ...

  6. 【manim动画教程】--目录(完结)

    manim是一个生成数学教学视频的动画引擎. 它用编程的方式创建精美的数学动画,让数学更加易懂. 本教程简单介绍了 manim 的基本使用方式,基于 v0.17.2 版本 manim 安装 manim ...

  7. 15、Flutter 按钮组件

    按钮组件的属性 ButtonStylee里面的常用的参数 ElevatedButton ElevatedButton 即"凸起"按钮,它默认带有阴影和灰色背景.按下后,阴影会变大 ...

  8. 君子不玩物丧志,亦常以借物调心,网站集成二次元网页小组件(widget)石蒜模拟器,聊以赏玩

    传世经典<菜根谭>中有言曰:"徜徉于山林泉石之间,而尘心渐息:夷犹于诗书图画之内,而俗气潜消.故君子虽不玩物丧志,亦常借物调心."意思是,徜徉在林泉山石之间,能够摒弃杂 ...

  9. Rust太难?那是你没看到这套Rust语言学习万字指南!

    摘要:从开发环境.语法.属性.内存管理和Unicode等五部分,为你带来一份详细的Rust语言学习的精华总结内容. 一.Rust开发环境指南 1.1 Rust代码执行 根据编译原理知识,编译器不是直接 ...

  10. 深度解析9种ScheduledThreadPoolExecutor的构造方法

    摘要:今天我们就来一起手撕ScheduledThreadPoolExecutor类的源代码. 本文分享自华为云社区<深度解析ScheduledThreadPoolExecutor类的源代码> ...