Mysql数据库基础

一:概念

Mysql在linux中分为mysql和mysqld。

mysql:数据库客户端

mysqld:数据库服务端(守护进程)
数据库的概念:存储在磁盘或者内存中的特定结构组织的数据文件,是数据的解决方案。

数据库服务:为用户提供数据库管理的一种网络服务。

实际上我们对数据库的操作,是使用在linux下安装的数据库应用程序通过mysqld的网络服务实现数据相关的操作。

二:Linux环境安装Mysql

bash 复制代码
#打印当前机器的Linux版本
[root@VM-4-11-centos ~]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) 
#在官网下载和Linux版本对应的rpm包
http://repo.mysql.com/
#安装rpm包
rpm -ivh mysql57-community-release-el7.rpm
#查看Linux的yum源是否被安装好
[root@VM-4-11-centos MySQL]# ls /etc/yum.repos.d/ -l
total 24
-rw-r--r-- 1 root root 1838 Apr 27  2017 mysql-community.repo
-rw-r--r-- 1 root root 1885 Apr 27  2017 mysql-community-source.repo
#使用yum安装mysql
yum install -y mysql-community-server
#查看MySQL是否安装成功
[root@VM-4-11-centos MySQL]# ls /etc/my.cnf #查看MySQL配置文件是否存在
/etc/my.cnf
[root@VM-4-11-centos MySQL]# which mysqld #查看MySQL服务端是否存在
/sbin/mysqld
[root@VM-4-11-centos MySQL]# which mysql #查看MySQL客户端是否存在
/bin/mysql
#启动MySQL服务器
systemctl start mysqld

所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员针对一个应用开发一个数据库。

为了保存实体中数据,一般会在一个数据库中建立多个表。

数据库服务器、数据库、表的关系如下:

三:修改数据库配置

bash 复制代码
vim /etc/my.cnf

为数据库设置以下内容,character-set是数据库默认字符集,default-storage-engine是默认存储引擎。并且在最后一行添加跳过密码检查的字段。

四:连接数据库

-h:连接至带数据库的主机的ip地址

-P:该主机的端口号

-u:数据库用户名

-p:输入密码

因为我们采用的是云服务器,数据库就在本地,所以使用本地主机ip地址。

设置开机自启动

bash 复制代码
#开启开机自启动
systemctl enable mysqld
systemctl daemon-reload

五:数据库语言(SQL)分类

DDL 【 data definition language 】 数据定义语言,用来维护存储数据的 结构
代表指令 : create, drop, alter
DML 【 data manipulation language 】 数据操纵语言,用来对 数据 进行操作
代表指令: insert , delete , update
DML 中又单独分了一个 DQL ,(data query language)数据查询语言,代表指令: select
DCL 【 Data Control Language 】 数据控制语言,主要负责权限管理和事务
代表指令: grant , revoke , commit

这个我们后面再具体讲。

六:存储引擎

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

MySQL的核心就是插件式存储引擎,支持多种存储引擎。

查看数据库引擎:

相关推荐
Omics Pro1 小时前
首个针对生物医药LLM智能体的全流程过程级评测框架
数据库·人工智能·windows·redis·量子计算
要开心吖ZSH1 小时前
MVCC 进阶:快照读 vs 当前读、幻读与 Next-Key Lock
java·数据库·sql·mysql·mvcc
水木流年追梦1 小时前
agent面试必备31- AI Agent 核心进阶:工具路由(Tool Routing)
数据库·人工智能·oracle·面试·职场和发展·embedding
xcLeigh2 小时前
KES运维自动化与脚本体系实战
运维·数据库·自动化·脚本·数据迁移·kes
万亿少女的梦1682 小时前
基于Spring Boot的社区管理系统设计与实现
java·spring boot·mysql·vue·系统设计
大气的小蜜蜂2 小时前
领域层的服务
java·前端·数据库
翔云1234562 小时前
简单概括主库上 Executed_Gtid_Set 是什么时候更新的
数据库·mysql
要开心吖ZSH2 小时前
Java事务与MySQL事务的关系及MVCC通俗解析
java·开发语言·mysql·mvcc
火星校尉2 小时前
一场数据基建与消费场景的跨界实验
java·前端·数据库·python·php
平安的平安2 小时前
从“云端排队“到“边缘上岗“:DolphinDB 云边协同如何重塑工业现场的实时智能
数据库