数据库系列
1.数据库概念及常用数据库介绍 2.Mariadb简介及不同系统安装
一.前言
默认配置文件
默认安装时,会在/etc目录下生成my.cnf文件及my.cnf.d文件夹用于存放数据库配置。 my.cnf : 主配置文件
#
# This group is read both by the client and the server
# use it for options that affect everything
#
# 表示客户端服务端都会读取[ client- server] 节点下的配置
[ client- server]
#
# include * . cnf from the config directory
#
# 表示/ etc/ my. cnf. d目录下以. cnf结尾的文件都会读取
! includedir / etc/ my. cnf. d
enable_encryption.preset: 启用静态数据加密,MariaDB在10.1.3版本中加入了支持表加密和表空间加密的特性,在10.1.7版本加入了支持binlog加密的特性,这使得我们可以对数据文件和binlog进行加密,避免数据文件、binlog等文件被窃取后破解出关键数据。
[ mariadb]
# 加密aria表
aria- encrypt- tables
# 加密binlog
encrypt- binlog
# 加密硬盘临时表
encrypt- tmp- disk- tables
# 加密临时文件
encrypt- tmp- files
# 加密innodb日志文件
loose- innodb- encrypt- log
# 加密innodb表
loose- innodb- encrypt- tables
mysql-clients.cnf: 客户端及客户端工具相关配置,MariaDB命令行工具会读取这些配置,在/usr/bin可以查到这个工具。
# 客户端
[ mysql]
# 升级
[ mysql_upgrade]
# mysqladmin
[ mysqladmin]
# binlog
[ mysqlbinlog]
# 检查, 分析, 优化, 修复表
[ mysqlcheck]
# 备份
[ mysqldump]
# 导入
[ mysqlimport]
# 展示
[ mysqlshow]
# 压力测试工具
[ mysqlslap]
server.cnf: 服务端相关配置,MariaDB server会读取这些配置,
# server
[ server]
# 服务端配置项
[ mysqld]
# galera集群配置项
[ galera]
# Mandatory settings
#wsrep_on= ON
#wsrep_provider=
#wsrep_cluster_address=
#binlog_format= row
#default_storage_engine= InnoDB
#innodb_autoinc_lock_mode= 2
#
# Allow server to accept connections on all interfaces.
#
#bind- address= 0.0 .0 .0
#
# Optional setting
#wsrep_slave_threads= 1
#innodb_flush_log_at_trx_commit= 0
# 仅适用于嵌入式服务器读取
[ embedded]
# 此组仅由MariaDB服务器读取,而不是由MySQL读取
[ mariadb]
# 此组仅由MariaDB- 10.4 服务器读取
[ mariadb- 10.4 ]
二、存储目录
使用SQL查询当前存储目录,默认在/var/lib/mysql下。
show variables like '%datadir%' ;
目录说明
文件 说明 aria_log.00000001 Aria引擎模式下的日志文件 aria_log_control Aria引擎控制文件 ib_buffer_pool 在关闭MySQL时或者手动执行dump 时会把内存中的热数据保存在磁盘的 ib_buffer_pool文件中 ibdata1 构建innodb表空间的文件,这个文件包含了innodb表的元数据、撤销记录、修改buffer和双写buffer ib_logfile0 innodb的事务日志文件 ib_logfile1 innodb的事务日志文件 ibtmp1 非压缩的innodb临时表的独立表空间,通过innodb_temp_data_file_path参数指定文件的路径,文件名和大小,默认配置为ibtmp1:12M:autoextend,也就是说在支持大文件的系统这个文件大小是可以无限增长的。 localhost.pid 保存的是数据库所启动的后台服务进程的PID值 multi-master.info 多源复制时主节点信息 mysql 数据库mysql存储文件 mysql.sock mysql客户端与服务端通信文件 my_test 自定义数据库my_test存储文件 performance_schema 默认数据库,主要用于收集数据库服务器性能参数 test 自带数据库test存储文件
三.默认数据库
数据库 说明 information_schema MySQL 自带的信息数据库,存储数据库元数据,例如数据库名、表名、列的数据类型、访问权限等。实际是视图,而不是基本表,因此,文件系统上没有与之相关的文件 performance_schema MySQL 自带的信息数据库,用于性能分析。比如执行了多少次SQL,客户端连接数,对CPU、内存的占用请求 mysql mysql的核心数据库,主要负责存储数据库的用户、权限设置、关键字等mysql自己需要使用的控制和管理信息。(常用的,在mysql.user表中修改root用户的密码)。 test 测试数据库,默认为空