MySQL数据库1:数据库基础

数据库基础

目录

数据库基础

一、卸载MySQL

1.1.停止MySQL服务

1.2.查看MySQL安装包

1.3.卸载MySQL

二、安装MySQL

2.1.安装MySQL

2.2.安全初始化

2.3.登录MySQL

三、数据库的认识

3.1.数据库的概念

3.2.主流的数据库

3.3.使用案例

3.4.服务器、数据库、表

3.5.数据逻辑存储

3.6.MySQL架构

3.7.SQL分类

3.8.存储引擎


一、卸载MySQL

1.1.停止MySQL服务

bash 复制代码
systemctl stop mysql

1.2.查看MySQL安装包

bash 复制代码
dpkg -l | grep mysql

1.3.卸载MySQL

bash 复制代码
apt remove mysql-server mysql-client mysql-common -y // 删除MySQL
rm -rf /var/lib/mysql // 删除残留目录
rm -rf /etc/mysql     // 删除残留目录
apt autoremove -y     // 清理无用依赖

检测是否删除干净

二、安装MySQL

2.1.安装MySQL

云服务器开放3306端口

bash 复制代码
apt install mysql-server -y 

2.2.安全初始化

bash 复制代码
// 启动设置开机自启
systemctl start mysql
systemctl enable mysql
// 安全初始化
mysql_secure_installation

2.3.登录MySQL

bash 复制代码
mysql -uroot -p

补充:开启远程访问,并创建远程root账号

bash 复制代码
// 修改绑定IP, 开启远程访问
vim /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address = 127.0.0.1 → bind-address = 0.0.0.0
// 重启数据库
systemctl restart mysql
bash 复制代码
// 输入安装时设置的密码
CREATE USER 'root'@'%' IDENTIFIED BY '你的密码';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
// 验证版本
mysql -V

-h:指明登录部署了的MySQL服务主机

-P:指明要访问的端口号(可在配置文件修改)

-u:指明登录的用户

-p:指明需要输入密码

三、数据库的认识

3.1.数据库的概念

文件提供了数据存储功能,但是没有提供很好的数据内容管理能力,所以引入了数据库

数据库:一套数据存储方案,在磁盘或内存中存储具有特定组织结构的数据

数据库本质:对数据内容存储的一套解决方案,提供字段与要求,直接返回结果

MySQL:一套提供数据存取服务的网络程序

MySQL本质:基于CS模式的一种网络服务

mysql(C):数据库服务的客户端

mysqld(S):数据库服务的服务端(d:守护进程)

3.2.主流的数据库

SQL Server:微软的产品,中大型项目

Oracle:甲骨文的产品,大型项目,复杂业务,并发性一般

MySQL:甲骨文的产品,不适合做复杂业务,并发性好

SQLite:轻型数据库,嵌入式设备

H2:用Java开发的嵌入式数据库

3.3.使用案例

建立数据库的本质就是在Linux下新建一个目录

在数据库内建表本质就是在Linux下创建对应的文件

创建一个数据库

sql 复制代码
create database helloworld; // 创建数据库

选择一个数据库

sql 复制代码
use helloworld; // 使用数据库

创建数据库表结构

sql 复制代码
// 创建数据库表
create table student(
    name varchar(32),
    age int,
    gender varchar(2)
);

向表中插入数据

sql 复制代码
insert into student (name, age, gender) values ('张三', 20, '男');

从表中选择数据

sql 复制代码
select * from student;

3.4.服务器、数据库、表

安装数据库指的是在主机上安装了一个数据库管理系统程序

该管理程序可以管理多个数据库,开发人员会针对每个应用创建一个数据库

为保存应用中实体的数据,一般会在数据库中创建多个表,来保存程序数据

3.5.数据逻辑存储

3.6.MySQL架构

MySQL是一个可移植的数据库,几乎能在当前所有的操作系统上运行

一层:安全与连接管理

二层:词法语法分析,SQL语句优化

三层:提供多种数据存储方案,可插拔存储引擎

底层:存入文件系统

3.7.SQL分类

DDL(Data Definition Language):数据定义语言

用来维护存储数据的结构,如:create,drop,alter

DML(Data Manipulation Language):数据操纵语言

用来对数据进行操作,如:insert,delete,update

DCL(Data Control Language):数据控制语言

用来负责权限管理和事务,如:grant,revoke,commit

3.8.存储引擎

数据库管理系统如何存储数据,如何为存储数据建立索引,如何更新、查询数据等技术的实现方法

常用:MyISAM、InnoDB

相关推荐
2301_32241428045 小时前
基于SpringBoot+Vue的休闲零食超市管理系统的设计与实现59004-计算机毕设 原创(免费领源码+部署教程+开发环境)
java·vue.js·spring boot·redis·mysql·决策树·推荐算法
福建佰胜张工8 小时前
SMC 薄型气爪 MHF2-16D1 深度解析:平行开闭、低剖面结构在自动化装配中的选型与落地
java·服务器·安全·自动化
catoop8 小时前
API Key 设计与安全生成方案:结构拆解、数据库设计与 Java 实现
java·数据库·安全
Web极客码8 小时前
我用 Claude 分析 Redis 哨兵日志,实现跨机房数据不一致自动对齐
数据库·redis·php
库库的数据库笔记8 小时前
国产信创数据库的MySQL兼容性深度对比解析
大数据·数据库·mysql·oceanbase·政务
xuefeiniao9 小时前
PHP2Shell漏洞修复
运维·服务器·php
姚远Oracle ACE9 小时前
为什么无法连接到 PostgreSQL?
数据库·postgresql
ss2739 小时前
AI时代首先数据库-PostgreSQL实战笔记 | 22 PostgreSQL实例与集群
数据库·笔记·postgresql
ss2739 小时前
AI时代首先数据库-PostgreSQL实战笔记 | 21 PostgreSQL进程与内存架构介绍
数据库·笔记·postgresql