Mysql

目录

[一, mysql是什么](#一, mysql是什么)

[1.1 核心定位](#1.1 核心定位)

[1.2. 主要用途](#1.2. 主要用途)

[1.3. 核心特点](#1.3. 核心特点)

二,关系数据库与非关系数据库

2.1、关系数据库(代表:MySQL、Oracle、PostgreSQL)

[2.1.1. 核心特点](#2.1.1. 核心特点)

[2.1.2. 适用场景](#2.1.2. 适用场景)

2.2、非关系数据库(NoSQL,代表:MongoDB、Redis、Elasticsearch)

[2.2.1. 核心特点](#2.2.1. 核心特点)

[2.2.2. 适用场景](#2.2.2. 适用场景)

2.3、核心差异对比表

[三, Mysql编译安装](#三, Mysql编译安装)


一, mysql是什么

MySQL 是一款开源的关系型数据库管理系统(RDBMS),是目前全球最流行的数据库之一,核心特点与用途如下:

1.1 核心定位

  • 基于「关系模型」(用表、行、列组织数据,通过 SQL 语言操作);
  • 主打轻量、高效、易用,同时支持高并发、大数据量场景(通过优化配置可支撑企业级业务)。

1.2. 主要用途

  • 网站 / 应用的数据存储:比如电商平台的商品、用户、订单数据,博客的文章、评论数据;
  • 数据分析 / 报表:通过 SQL 查询、统计数据;
  • 作为后端服务的「数据底座」:配合 Java、Python 等语言开发的程序,实现数据的增删改查。

1.3. 核心特点

  • 开源免费:基础版本可免费使用,降低成本;
  • 跨平台:支持 Linux、Windows、macOS 等系统;
  • 生态丰富:配套工具(如 MySQL Workbench 可视化管理工具)、社区资源多,问题易解决;
  • 扩展性强:可通过主从复制、分库分表等方式扩展性能。

关系数据库(RDBMS)和非关系数据库(NoSQL)是两类核心的数据存储系统,核心差异体现在数据模型、适用场景等方面,以下是对比总结:

二,关系数据库与非关系数据库

2.1、关系数据库(代表:MySQL、Oracle、PostgreSQL)

2.1.1. 核心特点
  • 数据模型 :用表 - 行 - 列的结构化形式存储,表之间通过「外键」建立关联(比如用户表和订单表通过用户 ID 关联);
  • 查询语言:使用标准 SQL(结构化查询语言),语法统一、功能强大(支持复杂查询、事务);
  • 强一致性:支持事务(ACID 特性),确保数据操作的原子性、一致性(比如转账操作要么全成,要么全败)。
2.1.2. 适用场景
  • 数据结构固定、需要强一致性的场景(比如金融交易、用户账户);
  • 需要复杂关联查询的场景(比如多表联合统计)。

2.2、非关系数据库(NoSQL,代表:MongoDB、Redis、Elasticsearch)

2.2.1. 核心特点
  • 数据模型 :无固定结构,常见类型包括:
    • 文档型(MongoDB):用 JSON/BSON 格式存储(比如一条用户数据是一个包含多字段的文档);
    • 键值型(Redis):用 "键 - 值" 对存储(比如缓存用户 Token);
    • 列族型(HBase):按列存储大数据量;
  • 查询方式:无统一 SQL,用各数据库的专属 API 操作;
  • 高扩展性:天然支持分布式存储,能快速扩容以应对海量数据 / 高并发;
  • 最终一致性:部分场景牺牲强一致性,换取更高的性能和可用性。
2.2.2. 适用场景
  • 数据结构灵活(比如社交平台的动态、电商的商品属性);
  • 高并发、海量数据场景(比如 Redis 做缓存、MongoDB 存日志);
  • 对查询性能要求极高的场景(比如 Elasticsearch 做全文检索)。

2.3、核心差异对比表

维度 关系数据库 非关系数据库
数据模型 结构化表 + 关联 文档 / 键值 / 列族等非结构化
查询语言 标准 SQL 专属 API
一致性 强一致性(ACID) 最终一致性
扩展性 垂直扩容为主(升级硬件) 水平扩容为主(增加节点)
适用场景 事务、复杂关联查询 高并发、灵活结构、海量数据

简单说:关系数据库适合结构化、强一致 的场景,非关系数据库适合灵活结构、高并发的场景,实际项目中常组合使用(比如 MySQL 存核心业务数据,Redis 做缓存)。

三, Mysql编译安装

准备环境

准备文件

一份 mysql与boost,前者解压到/opt/下

后者解压至

移动到

编辑

cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \

-DSYSCONFDIR=/etc \

-DSYSTEMD_PID_DIR=/usr/local/mysql \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_EXTRA_CHARSETS=all \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \

-DMYSQL_DATADIR=/usr/local/mysql/data \

-DWITH_BOOST=/usr/local/boost \

-DWITH_SYSTEMD=1

编辑普通用户管理mysql 及检查

vim /etc/my.cnf 删除原配置项,再重新添加下面内容

设置环境变量,让mysql命令便于系统识别

将 MySQL 的 systemd 服务配置文件复制到系统默认的服务目录中 ,目的是让系统能通过 systemctl 命令(如 systemctl start mysqld)管理 MySQL 服务(启动、停止、开机自启等)。

刷新识别 开机服务 开机自启动 查看端口

给root账号设置密码

相关推荐
韩立学长1 天前
【开题答辩实录分享】以《自助游网站的设计与实现》为例进行选题答辩实录分享
java·mysql·spring
SAP小崔说事儿1 天前
在数据库中将字符串拆分成表单(SQL和HANA版本)
java·数据库·sql·sap·hana·字符串拆分·无锡sap
川贝枇杷膏cbppg1 天前
asmcmd
数据库·oracle
JIngJaneIL1 天前
基于java+ vue助农电商系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
q_19132846951 天前
基于Springboot+MySQL+RuoYi的会议室预约管理系统
java·vue.js·spring boot·后端·mysql·若依·计算机毕业设计
IndulgeCui1 天前
基于CentOS7 DM8单机部署配置记录-20251216
数据库
surtr11 天前
关系代数与关系型数据库
数据库·sql·数据库系统
学海_无涯_苦作舟1 天前
MySQL面试题
数据库·mysql·面试
老邓计算机毕设1 天前
SSM校内二手书籍交易系统的设计与实现an1k0(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·ssm 框架开发·ssm 校内二手书籍交易系统
天行健,君子而铎1 天前
高性能、可控、多架构:教育行业数据库风险监测一体化解决方案
数据库·架构