1. 首页 > 国产数据库教程 > GreatSQL教程 > 正文

greatsql教程FG005-GreatSQL目录结构与核心文件详解

内容简介

本教程详细介绍GreatSQL数据库的目录结构和核心文件,包括安装目录、数据目录、日志文件、配置文件等内容。风哥教程参考GreatSQL官方文档系统管理员手册,帮助读者了解GreatSQL的文件系统结构和核心文件的作用。

了解GreatSQL的目录结构和核心文件对于数据库的管理、维护和故障排查非常重要。本教程将详细讲解各个目录和文件的作用,以及如何正确管理这些文件。

目录大纲

Part01-基础概念与理论知识

1.1 目录结构概述

GreatSQL的目录结构主要包括以下几个部分:

  • 安装目录:存放GreatSQL的可执行文件、库文件等
  • 数据目录:存放数据库数据文件
  • 日志目录:存放各种日志文件
  • 配置目录:存放配置文件
  • 临时目录:存放临时文件

1.2 核心文件类型

GreatSQL的核心文件类型包括:

  • 可执行文件:如mysqld、mysql、mysqld_safe等
  • 数据文件:如.frm、.ibd、.ibdata等
  • 日志文件:如error.log、slow.log、binlog等
  • 配置文件:如my.cnf
  • 库文件:如libmysqlclient.so等

1.3 文件权限管理

文件权限管理的重要性:

  • 确保数据文件的安全性
  • 防止未授权访问
  • 保证文件的正确读写权限
  • 避免权限错误导致的服务故障

Part02-生产环境规划与建议

2.1 目录结构规划

风哥提示:生产环境建议使用标准化的目录结构,便于管理和维护。

推荐的目录结构:

# 安装目录
/greatsql/app # GreatSQL软件安装目录

# 数据目录
/greatsql/fgdata # 数据文件目录

# 日志目录
/greatsql/logs # 日志文件目录

# 临时目录
/greatsql/tmp # 临时文件目录

# 备份目录
/greatsql/backup # 备份文件目录

# 脚本目录
/greatsql/scripts # 管理脚本目录

2.2 存储规划

存储规划建议:

  • 数据目录:使用SSD存储,单独挂载分区
  • 日志目录:可与数据目录同分区,或单独挂载
  • 备份目录:建议使用独立存储,如NFS或SAN
  • 临时目录:可使用tmpfs提高性能

2.3 备份策略

核心文件备份策略:

  • 配置文件:定期备份,每次修改后立即备份
  • 数据文件:定期全量备份,增量备份
  • 日志文件:根据需要备份binlog
  • 脚本文件:纳入版本控制系统

更多视频教程www.fgedu.net.cn

Part03-生产环境项目实施方案

3.1 目录创建与配置

目录创建步骤:

  1. 创建主目录结构
  2. 设置目录权限
  3. 配置目录挂载(如需)
  4. 验证目录可访问性

3.2 核心文件配置

核心文件配置建议:

  • 配置文件:使用标准化模板,定期检查
  • 数据文件:合理设置表空间,避免单文件过大
  • 日志文件:设置合理的日志大小和保留时间
  • 可执行文件:确保版本一致性

3.3 文件管理策略

文件管理策略:

  • 定期清理过期日志文件
  • 监控目录空间使用情况
  • 建立文件权限检查机制
  • 制定文件备份和恢复计划

Part04-生产案例与实战讲解

4.1 目录结构查看

# 查看安装目录结构 ls -la /greatsql/app/GreatSQL-8.0.32-24-Linux-glibc2.17-x86_64/

total 40
drwxr-xr-x 9 greatsql greatsql 4096 Apr 9 10:00 .
drwxr-xr-x 3 greatsql greatsql 4096 Apr 9 10:00 ..
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 bin
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 docs
drwxr-xr-x 3 greatsql greatsql 4096 Apr 9 10:00 include
drwxr-xr-x 4 greatsql greatsql 4096 Apr 9 10:00 lib
drwxr-xr-x 4 greatsql greatsql 4096 Apr 9 10:00 share
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 support-files

# 查看数据目录结构 ls -la /greatsql/fgdata/

total 122920
drwxr-xr-x 6 greatsql greatsql 4096 Apr 9 11:00 .
drwxr-xr-x 6 greatsql greatsql 4096 Apr 9 10:00 ..
-rw-r—– 1 greatsql greatsql 56 Apr 9 10:00 auto.cnf
-rw-r—– 1 greatsql greatsql 12582912 Apr 9 11:00 ibdata1
-rw-r—– 1 greatsql greatsql 50331648 Apr 9 11:00 ib_logfile0
-rw-r—– 1 greatsql greatsql 50331648 Apr 9 10:00 ib_logfile1
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 mysql
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 performance_schema
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 sys
-rw-r—– 1 greatsql greatsql 6 Apr 9 11:00 fgedu.net.cn.pid

# 查看日志目录结构 ls -la /greatsql/logs/

total 8
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 11:00 .
drwxr-xr-x 6 greatsql greatsql 4096 Apr 9 10:00 ..
-rw-r—– 1 greatsql greatsql 1024 Apr 9 11:00 error.log
-rw-r—– 1 greatsql greatsql 0 Apr 9 11:00 slow.log

学习交流加群风哥微信: itpux-com

4.2 核心文件分析

4.2.1 可执行文件

# 查看bin目录下的可执行文件 ls -la /greatsql/app/GreatSQL-8.0.32-24-Linux-glibc2.17-x86_64/bin/

total 448208
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 .
drwxr-xr-x 9 greatsql greatsql 4096 Apr 9 10:00 ..
-rwxr-xr-x 1 greatsql greatsql 2422440 Apr 9 10:00 myisamchk
-rwxr-xr-x 1 greatsql greatsql 2406872 Apr 9 10:00 myisamdump
-rwxr-xr-x 1 greatsql greatsql 2383704 Apr 9 10:00 myisamlog
-rwxr-xr-x 1 greatsql greatsql 2387768 Apr 9 10:00 myisampack
-rwxr-xr-x 1 greatsql greatsql 2362488 Apr 9 10:00 mysql
-rwxr-xr-x 1 greatsql greatsql 2358424 Apr 9 10:00 mysqladmin
-rwxr-xr-x 1 greatsql greatsql 2370552 Apr 9 10:00 mysqlbinlog
-rwxr-xr-x 1 greatsql greatsql 2354360 Apr 9 10:00 mysqlcheck
-rwxr-xr-x 1 greatsql greatsql 2907384 Apr 9 10:00 mysqld
-rwxr-xr-x 1 greatsql greatsql 24240 Apr 9 10:00 mysqld_multi
-rwxr-xr-x 1 greatsql greatsql 104920 Apr 9 10:00 mysqld_safe
-rwxr-xr-x 1 greatsql greatsql 2354360 Apr 9 10:00 mysqlimport
-rwxr-xr-x 1 greatsql greatsql 2350296 Apr 9 10:00 mysqlshow
-rwxr-xr-x 1 greatsql greatsql 2350296 Apr 9 10:00 mysqlslap

4.2.2 数据文件

# 查看数据文件 ls -la /greatsql/fgdata/mysql/

total 1104
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 .
drwxr-xr-x 6 greatsql greatsql 4096 Apr 9 11:00 ..
-rw-r—– 1 greatsql greatsql 1798 Apr 9 10:00 columns_priv.frm
-rw-r—– 1 greatsql greatsql 96 Apr 9 10:00 columns_priv.ibd
-rw-r—– 1 greatsql greatsql 1798 Apr 9 10:00 db.frm
-rw-r—– 1 greatsql greatsql 1152 Apr 9 10:00 db.ibd
-rw-r—– 1 greatsql greatsql 1798 Apr 9 10:00 event.frm
-rw-r—– 1 greatsql greatsql 112 Apr 9 10:00 event.ibd

4.2.3 日志文件

# 查看错误日志 head -20 /greatsql/logs/error.log

2026-04-09T03:00:00.000000Z 0 [System] [MY-010116] [Server] /greatsql/app/GreatSQL-8.0.32-24-Linux-glibc2.17-x86_64/bin/mysqld (mysqld 8.0.32-24) starting as process 12345
2026-04-09T03:00:00.000000Z 0 [Warning] [MY-010091] [Server] Can’t create test file /greatsql/fgdata/fgedu.net.cn.lower-test
2026-04-09T03:00:00.000000Z 0 [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /greatsql/fgdata is case insensitive
2026-04-09T03:00:00.000000Z 0 [System] [MY-010338] [Server] GTID mode is disabled (GTID_MODE=OFF), so replication will not work for this server.
2026-04-09T03:00:00.000000Z 0 [System] [MY-010931] [Server] /greatsql/app/GreatSQL-8.0.32-24-Linux-glibc2.17-x86_64/bin/mysqld: ready for connections. Version: ‘8.0.32-24 GreatSQL, Release 24, Revision 3736467bc8c’ socket: ‘/tmp/mysql.sock’ port: 3306 GreatSQL Server

学习交流加群风哥QQ113257174

4.3 文件管理实战

# 创建备份目录
mkdir -p /greatsql/backup/full /greatsql/backup/incremental

# 备份配置文件 cp /etc/my.cnf /greatsql/backup/my.cnf.$(date +%Y%m%d)

# 清理过期日志文件
find /greatsql/logs/ -name “*.log” -mtime +7 -delete

# 监控目录空间 df -h /greatsql/

Filesystem Size Used Avail Use% Mounted on
/dev/sdb1 1.8T 20G 1.7T 2% /greatsql

# 检查文件权限 ls -la /greatsql/fgdata/

total 122920
drwxr-xr-x 6 greatsql greatsql 4096 Apr 9 11:00 .
drwxr-xr-x 6 greatsql greatsql 4096 Apr 9 10:00 ..
-rw-r—– 1 greatsql greatsql 56 Apr 9 10:00 auto.cnf
-rw-r—– 1 greatsql greatsql 12582912 Apr 9 11:00 ibdata1
-rw-r—– 1 greatsql greatsql 50331648 Apr 9 11:00 ib_logfile0
-rw-r—– 1 greatsql greatsql 50331648 Apr 9 10:00 ib_logfile1
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 mysql
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 performance_schema
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 10:00 sys
-rw-r—– 1 greatsql greatsql 6 Apr 9 11:00 fgedu.net.cn.pid

Part05-风哥经验总结与分享

5.1 常见目录问题与解决方案

问题 解决方案
目录权限错误 使用chown和chmod命令修正权限
目录空间不足 清理过期文件或扩展分区
文件损坏 从备份恢复或使用修复工具
路径配置错误 检查配置文件中的路径设置

5.2 目录管理最佳实践

  • 使用标准化的目录结构
  • 定期检查目录权限和空间
  • 建立文件清理和备份策略
  • 使用监控工具监控目录状态
  • 记录目录变更历史

更多学习教程公众号风哥教程itpux_com

5.3 核心文件备份与恢复

# 创建核心文件备份脚本
cat > /greatsql/scripts/backup_core_files.sh << 'EOF'
#!/bin/bash # backup_core_files.sh
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn BACKUP_DIR=”/greatsql/backup/core/$(date +%Y%m%d)”
mkdir -p $BACKUP_DIR
# 备份配置文件 cp /etc/my.cnf $BACKUP_DIR/
# 备份数据目录结构
find /greatsql/fgdata -type f -name “*.ibd” | sort > $BACKUP_DIR/tablespace_list.txt
# 备份binlog索引文件 if [ -f /greatsql/fgdata/binlog.index ]; then cp /greatsql/fgdata/binlog.index $BACKUP_DIR/ fi
echo “Core files backup completed: $BACKUP_DIR” EOF
# 设置脚本权限
chmod +x /greatsql/scripts/backup_core_files.sh

# 执行备份脚本 /greatsql/scripts/backup_core_files.sh

Core files backup completed: /greatsql/backup/core/20260409

# 查看备份结果 ls -la /greatsql/backup/core/20260409/

total 16
drwxr-xr-x 2 greatsql greatsql 4096 Apr 9 12:00 .
drwxr-xr-x 3 greatsql greatsql 4096 Apr 9 12:00 ..
-rw-r–r– 1 greatsql greatsql 1000 Apr 9 12:00 my.cnf
-rw-r–r– 1 greatsql greatsql 500 Apr 9 12:00 tablespace_list.txt

from greatsql视频:www.itpux.com

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息