MySQL --- MySQL数据库基础

MySQL数据库基础

一、数据库基础

1.1什么是数据库

我们熟知文件也是有一定的数据存储功能的,尽管如此文件保存数据有以下几个缺点:

(1)文件的安全性问题得不到保障

(2)文件不利于数据查询和管理、不利于存储海量数据

(3)文件在程序中控制不方便

为了解决上述问题,专家们设计出更加利于管理数据的东西------数据库,它能更有效的管理数据;数据库存储介质有:磁盘、内存;数据库的水平是衡量一个程序员水平的重要指标;

1.2基本使用

1.2.1mysql安装

我当前Linux系统是Ubuntu22.04发行版,直接使用qpt包管理器安装默认mysql即可,对与学习sql语句,创建库,表等操作就已经够用了。

直接在终端上输入下面的指令:

复制代码
apt install mysql-server -y

安装完成后mysql服务通常会自动启动。

1.2.2mysql介绍

mysql是一个基于C(mysql客户端) / S(mysqld服务端)模式的网络服务,通俗来将就是:

用户使用mysql客户端向mysqld服务端下达各种操作指令,由mysqld解析并进行对应的指令操作(比如说create database),最后再回显给客户端的一种网络服务模式,而我们常说的数据库就是mysqld在底层文件系统上维护的一系列文件(数据、索引、日志、元数据/属性),并且只能由mysqld来安全的进行读写。

1.2.3mysql基础使用

(1)启动mysql:systemctl start mysql

查看启动状态:systemctl status mysql

(2)登录mysql:mysql -h 登录IP地址 -P 端口号 -u 登录用户 -p

使用本地登录可以不选用前两个选项。

Ubuntu系统root用户没有进行密码设置,mysql8.0登录root账号时不用输入密码,出现Enter password时直接按下回车键即可登录成功。

(3)首次创建数据库以及表

创建数据库:
复制代码
create database 你的数据库名称;            
查看所有数据库:
复制代码
show databases;
使用数据库:
复制代码
use 你的数据库名称;
创建数据库表:
复制代码
create table 你的表名字(
	列名1 数据类型 约束,
	列名2 数据类型 约束,
	......
);
向表中插入数据:
复制代码
insert into student (id, name, gender) values (1, '张三', '男');
insert into student (id, name, gender) values (2, '李四', '男');
查询表数据:
复制代码
select * from student;

具体这些语句代表什么含义,怎么具体使用,后续博客会持续跟进学习的。

创建库,表的本质:

在Linux系统下,创建一个数据库,在库中创建表结构,本质上是在特定路径(/var/lib/mysql)下创建目录,在目录中创建文件。

对应刚刚show databases查看的所有数据库信息,hellomysql数据库就在其中。

(4)关闭mysql服务

若短时间内不需要使用mysql了,可以直接退出Liunx系统,占用小部分资源一直在后台运行;若长时间不会使用mysql了可以关闭mysql服务,下次使用重新启动即可:

复制代码
systemctl stop mysql;

1.3SQL分类

(1)DDL【data definition language】数据定义语言,用来维护存储数据的结构

代表指令: create, drop, alter

(2)DML【data manipulation language】数据操纵语言,用来对数据进行操作

代表指令:insert,delete,update

DML中又单独分了一个DQL,数据查询语言,代表指令:select

(3)DCL【Data Control Language】数据控制语言,主要负责权限管理和事务

代表指令:grant,revoke,commit

相关推荐
苍狼唤28 分钟前
SQL+C# 增删改查(练习)
数据库·sql·c#
2301_8002561135 分钟前
第七章 空间存储与索引 知识点梳理-2
数据库·sql·oracle
草莓熊Lotso1 小时前
【Redis 初阶】 从分布式演进背景到环境搭建全解析
数据库·人工智能·redis·分布式·缓存
倔强的石头_1 小时前
优化器为什么敢把你写的 LEFT JOIN 悄悄改掉?-国产化金仓 KES 优化器设计思路拆解
数据库
学习-学习1 小时前
PostgreSQL 19 Beta 值得测吗?并行 Autovacuum、REPACK 到 WAIT FOR LSN 看生产影响
数据库·postgresql
何中应1 小时前
Postgres 搭建主从集群
数据库·postgresql·集群·开发工具
数字新视界2 小时前
档案库房环境安全监控解决方案
大数据·运维·数据库·物联网·环境监控系统
嘘神秘用10 小时前
布:AI 驱动的 Redis 客户端,更快、更直观
数据库·人工智能·redis
东北小狐狸-Hellxz12 小时前
Redis 哨兵搭建+ACL权限控制
数据库·redis
研究员子楚13 小时前
GEO行业发展标准体系白皮书V2.0-第09卷 · 适配篇:硅基主权伦理宪章与行业适配宣言
数据库·人工智能·geo