Linux | 数据库操作基础
一. 基础概念
1.1 什么是数据库
数据库就是高级的表格软件
1.2 常见的数据库
- 关系型数据库 Relational Database
- MySQL
- PostgreSQL
- SQL Server
- 非关系型数据库
- MongoDB
- Cassandra
- Redis
- 其他类型
- 时序数据库: InfluxDB、Prometheus
1.3 什么是mariadb
- 属于关系型数据库,是 MySQL 的开源替代方案
- 兼容性:完全兼容 MySQL 的语法、API和文件格式
- 性能优化
- 支持多线程复制(提高主从复制性能)
- 改进的查询优化器(更快的 JOIN 和聚合操作)
- 新增内存引擎(如 MyRocks)支持 PB 级数据存储
二. 安装及安全初始化
2.1 数据库安装和启动
1. 查找数据库软件包
dnf search mysql2. 安装mysql
dnf install mysql-server.x86_64 -y3. 启动数据库
systemctl enable --now mysqld.service
2.2 数据库的安全初始化
默认安装的数据库不需要密码,为了让数据库更安全,需要对当前的mysql进行安全初始化
2.3 测试安全初始化
三. SQL基础语句
3.1 数据库database
create创建、use使用、show查看、drop删除
3.2 数据表table、数据
数据表:create创建、drop删除、alter修改结构、desc查看结构、show查看
数据:insert into插入、select from查询、update更新、delect删除
3.3 备份
## 1.备份数据库的所有数据
[root@node ~]# mysqldump -uroot -p12345678 -A > /mnt/all.sql
## 2.备份数据库中的结构,但不备份具体数据
[root@node ~]# mysqldump -uroot -p12345678 -A --no-data >/mnt/allnodata.sq
#3 3.备份单独的数据库haha
[root@node ~]# mysqldump -uroot -p12345678 haha > /mnt/haha.sql## 4.删除与恢复数据库
[root@node ~]# mysql -uroot -p12345678 -e "drop database haha;"
[root@node ~]# mysql -uroot -p haha < /mnt/haha.sql