news 2026/10/3 16:56:06

Linux运维:MariaDB知识点总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux运维:MariaDB知识点总结

MariaDB知识点总结

MariaDB是MySQL的分支,CentOS7默认数据库,端口3306,核心包含进程、安装加固、配置文件、库表SQL操作、用户权限、密码故障处理、备份恢复、主从复制。

1. 双进程模型

  1. mysqld_safe:守护监控进程:启动、监控mysqld,主进程崩溃自动重启;管理错误日志与启动参数。
  2. mysqld:数据库核心主进程:监听3306端口,处理客户端连接、SQL读写、事务、磁盘数据操作。

关系:mysqld_safe生成mysqld子进程;直接kill mysqld会被守护进程拉起;systemctl停止mariadb两个进程同时关闭。

2. 安装与安全加固

  1. 软件包:mariadb‑server服务端,mariadb客户端工具。
  2. 启动:systemctl enable --now mariadb;防火墙放行mysql服务。
  3. 加固脚本mysql_secure_installation交互式完成:设置root密码、禁止root远程登录、删除匿名账号、删除test测试库。

3. 配置文件体系

  • /etc/my.cnf:主配置,优先级最高。
  • /etc/my.cnf.d/细分配置目录
    • server.cnf:[mysqld]/[mysqld_safe],控制数据库服务端(端口、监听地址、数据目录、引擎、日志)
    • client.cnf、mysql‑clients.cnf:控制mysql客户端连接参数。

4. 数据库库操作SQL

功能命令
查看所有库SHOW DATABASES;
创建库CREATE DATABASE [IF NOT EXISTS] 库名;
删除库DROP DATABASE [IF EXISTS] 库名;
切换库USE 库名;
查看当前库SELECT DATABASE();

5. 数据表操作SQL

  1. 基础:SHOW TABLES;查看表;DESCRIBE 表名;查看表结构;CREATE TABLE建表;DROP TABLE删表。
  2. DML数据操作
    • 查询:SELECT,支持指定列、WHERE条件、ORDER BY排序;运算符:> < = != BETWEEN AND IN LIKE AND OR。
    • 聚合函数:COUNT、SUM、AVG、MAX、MIN,搭配GROUP BY分组统计。
    • 插入:INSERT INTO 表(列) VALUES(值)
    • 更新:UPDATE 表 SET 列=值 WHERE条件,不加WHERE会更新全表。
    • 删除:DELETE FROM 表 WHERE条件,不加WHERE清空整张表数据。

6. 用户与权限管理

  1. 用户格式:'用户名'@'登录主机';主机支持localhost、IP、网段通配符%。
  2. 常用命令
    • 创建用户:CREATE USER 'user'@'host' IDENTIFIED BY '密码';
    • 删除用户:DROP USER 'user'@'host';
    • 授权:GRANT 权限 ON 范围 TO 用户@主机;范围:*.*全局、库.*库级别、库.表表级别,还支持列级权限。
    • 回收权限:REVOKE 权限 ON 范围 FROM 用户@主机;
    • 查看权限:SHOW GRANTS FOR 'user'@'host';
    • 修改密码:SET PASSWORD FOR 'user'@'host' = PASSWORD('新密码');
    • 授权回收之后执行FLUSH PRIVILEGES;刷新权限生效。
  3. 权限分类:全局权限、数据库权限、数据表权限、列粒度权限;遵循最小权限原则。

7. 故障处理

① root密码忘记

  1. 修改/etc/my.cnf.d/server.cnf的[mysqld]段添加skip‑grant‑tables=1,跳过权限校验。
  2. 重启mariadb,无密码登录修改mysql.user表root密码。
  3. 注释掉skip‑grant‑tables,再次重启数据库恢复权限校验。

② root权限被误回收 / root账号被误删除

同样借助skip‑grant‑tables跳过权限,修改mysql.user系统表,恢复权限或者重建root账号,之后注释参数重启服务。

8. 备份与恢复

物理备份(直接拷贝数据目录)

  • 备份:停止mariadb,拷贝/var/lib/mysql目录。
  • 恢复:拷贝回原路径,必须修改属主为mysql:mysql,启动服务。

逻辑备份(mysqldump,SQL语句导出)

  1. 备份
#单库(不包含建库语句)mysqldump-uroot-p库名>xxx.sql#带建库语句mysqldump-uroot-p--databases库名>xxx.sql#全部库mysqldump-uroot-p--all‑databases>all.sql
  1. 恢复两种方式
mysql-uroot-p<xxx.sql#进入数据库内部执行sourcexxx.sql

9. MariaDB主从异步复制

异步复制:主库执行写操作立刻返回客户端,不需要等待从库同步完成。

  1. 工作流程
    • Master主库:写数据,变更记录到binlog二进制日志。
    • Slave从库:IO线程拉取主库binlog,写入本地relay‑log中继日志;SQL线程回放中继日志SQL,实现数据同步。
  2. 配置要点
    • server‑id全局唯一:主库一般1,从库2,不能重复;开启log_bin二进制日志;binlog格式推荐ROW行级复制。
    • 主库:创建专门复制账号repl,授予REPLICATION SLAVE、REPLICATION CLIENT权限;show master status\G拿到binlog文件名和position偏移量。
    • 从库:change master to填写主库IP、复制账号密码、binlog文件、position;执行start slave启动同步。
    • 校验:show slave status\G,Slave_IO_Running:Yes、Slave_SQL_Running:Yes代表同步正常。

易错提示:

  1. SQL语句末尾必须带;,漏分号进入->多行等待提示符,输入\c放弃当前SQL;\q才是退出客户端。
  2. UPDATE、DELETE一定要写WHERE条件,否则全表数据遭殃。
  3. 主从复制server‑id不能重复,binlog的File和Position必须和主库保持一致。
  4. mysqldump逻辑备份账号至少需要select权限,视图需要show view权限
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/3 16:55:28

GB/T 7714-2015 参考文献著录速查:文献类型标识、常见错误与批量转换

参考文献格式分&#xff0c;是整个论文流程里性价比极低的失分&#xff1a;内容没毛病&#xff0c;格式错一堆&#xff0c;盲审和编辑的第一印象直接受损。这篇把 GB/T 7714-2015 顺序编码制的常用要点整理成一页速查。 一、各类型文献的著录骨架 期刊 [J]&#xff1a;作者. 题…

作者头像 李华
网站建设 2026/10/3 16:51:55

由前AI运营助手:把商品资料整理成可执行的内容任务单

电商内容返工&#xff0c;常见原因是商品资料、渠道要求和制作任务混在一起。由前AI运营助手可以帮助整理市场与内容方向&#xff0c;但输入资料和最终事实仍需要人工确认。把任务拆成一张可执行的清单&#xff0c;比直接要求“写一篇卖货文案”更容易验收。 1. 先写清商品事实…

作者头像 李华
网站建设 2026/10/3 16:51:15

nodejs24安装(node.js安装)

参考说明&#xff1a;参考文章有些小问题。 【2025年最新版】Node.js安装及环境配置超详细教程&#xff08;以win11为例子&#xff09;_nodejs安装及环境配置-CSDN博客 文章特别说明&#xff1a;请不要 擅自更改 安装路径&#xff0c;默认的就行&#xff0c;不要听从原作者的

作者头像 李华