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的核心就是插件式存储引擎,支持多种存储引擎。

查看数据库引擎:

相关推荐
w-w0w-w4 小时前
SQL注入
网络·数据库·sql
tianyuanwo4 小时前
NetBox 数据库详解:当“关系型数据库”被装进一个网络运维的领域模型里
运维·数据库·netbox
一条泥憨鱼4 小时前
【计算机网络】短连接、长连接与连接池:从 TCP 握手到池化复用的完整链路
网络·数据库·网络协议·tcp/ip·计算机网络
IvorySQL4 小时前
深入 PostgreSQL WAL:从崩溃恢复到逻辑复制
数据库·postgresql
幽灵诶6 小时前
Mysql(基于测试的学习)
数据库·mysql
砚底藏山河6 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
宇宙无敌暴龙战士6666 小时前
MySQL 8 库表操作学习笔记:SQL 基础、库表管理、约束与用户授权全流程
数据库·sql·mysql·学习笔记·后端开发
猿究院_夏燊7 小时前
MySQL 的四种隔离级别
java·数据库·mysql
say_fall7 小时前
【Linux系统编程】Ext 文件系统:磁盘与存储、文件与目录、现代计算机究竟如何寻找文件
linux·运维·服务器·数据库·c++
共享家95278 小时前
408 操作系统第一章
服务器·数据库·windows