mysql数据库基本概念简介
概述
为什么要使用数据库? 答:实现数据的持久化。
数据库存储类型多样,存储量大。由于其他文件等介质。
概念
DB:database(数据库),保存数据的仓库,本质是一个文件系统。
DBMS:数据库管理系统,常说的Mysql数据库,管理软件。
SQL:结构化查询语言。
通过SQL,使用DBMS管理DB实现数据的增删查改。
常见的DBMS:
-
Oracle -
Mysql -
SQL Server -
Sqlite -
Redis
关系型数据库RDBMS:Mysql是开源的关系型数据库管理系统。MariaDB是Mysql的分支。 以行和列的形式存储数据,构成表,多个表构成数据库。关系模型表示。
MYsql优点:
-
开源免费,使用成本低 -
性能卓越,服务稳定 -
体积小,使用简单,易于维护 -
社区活跃...
关系型数据库设计规则
表,记录,字段。
表的关联关系:
-
一对一 -
一对多 -
多对多 -
自我关联
基本名词定义
data:数据
database:数据库
dbms(database management system)数据库管理系统
rdbms(relational database management system)关系型数据库管理系统
table:表
field:字段
column:列
attribute:属性
type:类型
key:键值
index:索引
view:视图
sp(stored procedure):存储过程
trigger:触发器
primary key:主键
forerign key:外键
unique:唯一
performance:性能
tuning:调优
backup:备份
restore:恢复
user:用户
grant:授权
revoke:回收
privilege:权限
select:查询
update:修改
delete:删除
insert:添加
安装步骤
# 下载:
官网下载 GA版本
# 上传服务器并解压到指定文件:
一般默认/usr/local/mysql
# 配置数据目录和启动用户:
mysql:mysql ,数据目录为/usr/local/mysql/data,需手动创建
# 配置文件my.cnf,
进行端口,并发连接,字符集,存储引擎等设置
# 初始化:
cd /www/mysql
./bin/mysqld --defaults-file=/www/mysql/etc/my.cnf --user=mysql --basedir=/www/mysql --datadir=/www/mysql/data --character-set-server=utf8mb4 --initialize
# 配置启动方式,通过systemctl或者手动启动
cd /www/mysql-8.0.29/script
# 复制进程文件到目录下
cp mysqld.service /usr/lib/systemd/system/
# 刷新
systemctl-daemon-reload
# 修改默认密码
alter user 'root'@'localhost' identified by 'WZS134125'
# 迁移data目录
mv data /mnt
# 修改my.cnf
datadir=/mnt
# 通过sql查看内置变量
show VARIABLES LIKE '%bind_address%';
授权认证
mysql权限认证由用户名和主机名组成类似: root@localhost
root@localhost和root@192.168.131.101是两个不同的用户
# 创建用户,设置密码,通过create user
create user chuck@'localhost' identified by 'WZS134125';
# 授予权限,grant,revoke
grant all privileges on *.* to chuck@'localhost'; # 授予所有权限
GRANT SELECT, INSERT ON database_name.table_name TO user_name; # 授予特定权限
GRANT SELECT, INSERT ON database_name.table_name TO role_name; # 授予角色的权限
# 查看权限
show grants for chuck@'localhost';
# 撤销权限
REVOKE ALL PRIVILEGES ON database_name.* FROM user_name; # 撤销所有权限
REVOKE SELECT, INSERT ON database_name.table_name FROM user_name; # 撤销特定权限
REVOKE ALL PRIVILEGES ON database_name.* FROM role_name; # 撤销角色权限
# 针对字段或者列进行限制
GRANT SELECT(name)ON database_name.table_name TO user_name; # 针对特定字段进行控制
权限级别:
-
全局性,针对数据库示例所有的数据库权限控制 -
数据库级别,针对某些数据库的权限 -
数据库对象级别,针对特定的修改,查询,更新或者某个字段和列的权限
概述: 我们需要存储的一些有价值的数据如:姓名、年龄、职业、项目、薪资等数据以一种格式化的数据存储在数据表中,多个关联的表存储在同一个数据库中,使用数据库管理软件进行查询、修改、删除操作,实际物理存储路径在服务器的目录上。
本文由 mdnice 多平台发布
相关文章:
mysql数据库基本概念简介
概述 为什么要使用数据库? 答:实现数据的持久化。 数据库存储类型多样,存储量大。由于其他文件等介质。 概念 DB:database(数据库),保存数据的仓库,本质是一个文件系统。 DBMS:数据库管理系统,常说的Mysql数…...
前端开发_HTML
简介 CSS用于美化内容 HTML用于摆放内容 可以理解为HTML是基础,CSS是工具 HTML定义 HTML 超文本标记语言——HyperText Markup Language 超文本——链接 标记——标签,即带尖括号的文本 标签语法 双标签 开始标签: <xxx> 即尖…...
1.Spring源码解析-ClassPathXmlApplicationContext
此类是读取spring的xml配置文件并解析。也是源码入口之一。 我们调试即将开始。 传递给父类设置值 经调试我们得到是给AbstractApplicationContext设置默认的应用上下文父级的值,很明显是空 给父类AbstractRefreshableConfigApplicationContext设置属性 刷新容器…...
android 动态创建selector状态选择器 动态创建Drawable
最近在做一个使用接口返回的字符串:"#ff0000" 来动态设置drawable背景颜色与动态设置状态选择器selector的需求,之前写习惯了shape的xml,还是第一次写动态的,有点搞笑,搞笑的是自己没写过,不知道…...
Python与设计模式--责任链模式
23种计模式之 前言 (5)单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、(11)策略模式、责任链模式、命令模式、中介者模…...
(C)一些题6
1.正确定义符号常量PI的宏定义为 A.define PI 3.14 B.define PI 3.14: C。#define PI 3.14 D #define PI 3.14; 2。关于字符数组的描述中错误的是() A.字符数组可以存放字符串 B.字符数组中的字符串可以整体输入和输出 C。可以在赋值语句中通过运算符“”对…...
基于单片机的肺活量检测系统(论文+源码)
1.系统设计 在基于单片机的肺活量检测系统中,在硬件上整个系统通过利用主控制器STC89C52单片机来实现对整个系统进行控制的功能,通过采用LCD1602实现实时液晶显示数据的功能,通过肺活量传感器XGZP6847ADC0832实现监测肺活量的工作࿰…...
【开题报告】海洋多源数据质量控制应用服务的WebServer设计与实现
开 题 报 告 内 容 论文选题的意义、主要研究内容和文献资料调研情况 一、选题意义 在当今世界研究自然环境的大背景下,计算机技术与各学科、各领域的综合应用逐渐增多。作为地球上最广阔的水体,同时也是地球上决定气候发展的主要的因素之一࿰…...
接单平台在精不在多,劝诸位程序员找个好平台!
程序员想找兼职搞副业,结果知乎上逛了一大圈,各种平台推荐,可以说是眼花缭乱。要么就是平台一搜,各种劝退!好好好,就问一句,还搞不搞?Of course~有钱还不赚的是傻子。加班摸鱼的时候…...
mybatis关于namespace以及id以及Mapper接口命名的说明(了解)
1、建库建表 CREATE DATABASE mybatis-example;USE mybatis-example;CREATE TABLE t_emp(emp_id INT AUTO_INCREMENT,emp_name CHAR(100),emp_salary DOUBLE(10,5),PRIMARY KEY(emp_id) );INSERT INTO t_emp(emp_name,emp_salary) VALUES("tom",200.33); INSERT INTO…...
MySQL中的锁(简单)
目录 1. 共享锁(Shared Lock): 2. 排他锁(Exclusive Lock): 3. 行级锁(Row-Level Lock): 4. 页级锁(Page-Level Lock): 5. 表级锁…...
【独家OD2023C卷真题】20天拿下华为OD笔试【贪心】2023C-分配土地最大面积【欧弟算法】全网注释最详细分类最全的华为OD真题题解
文章目录 题目描述与示例题目描述输入描述输出描述备注示例一输入输出说明 示例二输入输出说明 解题思路单种颜色的最小覆盖面积多种颜色的最小覆盖面积 代码PythonJavaC时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目描述与示例 题目描述 从前有个村庄…...
省市区编码sql
CREATE TABLE area (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,code varchar(64) COLLATE utf8mb4_bin DEFAULT NULL COMMENT 编码,name varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT 名称,parent_code varchar(64) COLLATE utf8mb4_bin DEFAULT NULL CO…...
实现电商平台与营销系统无缝集成:雅座的无代码开发与API连接
无代码开发:营销的新引擎 在数字化转型的浪潮中,无代码开发已成为企业提升效率、减少成本的新引擎。这种开发方式允许非技术人员通过图形界面构建应用程序,无需编写代码即可实现复杂功能。这对于营销、广告推广以及用户运营等业务尤为重要&a…...
win10下安装 Anaconda + Cuda + Cudnn + Pycharm + Pytorch
1.安装Anaconda (1-1)下载Ananconda, Anaconda官网 选择windows版本; (1-2)安装Anaconda,一般选择【Just Me】 (1-3)建议不要装在C盘,后期多环境的python环境和各种库文件会占用很多…...
第20章 多线程
创建线程 继承Thread 类 Thread 类时 java.lang 包中的一个类,从类中实例化的对象代表线程,程序员启动一个新线程需要建立 Thread 实例。 Thread 对象需要一个任务来执行,任务是指线程在启动时执行的工作,start() 方法启动线程&am…...
自定义类型:结构体,枚举,联合
1结构体的声明 1.1结构体基础知识 结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。 1.2声明: struct tag {member-list; }variable-list; 描述一个学生: struct Stu {char name[20];//名字int age;//年龄char…...
C++:C++11新特性---右值引用
文章目录 初始化方式显示查看类型initializer_listdecltype左值引用和右值引用move左右值引用的场景 万能引用和完美转发 本篇总结C11新特性 初始化方式 C11对参数列表的初始化有了更明确的定义,可以这样进行定义 // 列表初始化 void test1() {// 旧版本int x 0…...
计算机人机界面
人机界面是指入与机器之间相互交流和影响的区域。人机界面包括对数据和信息的输入和输出方法,以及人们对机器的操作和控制。早期,人机交互界面是控制合,随后通过键盘进行操作,目前为鼠标和键盘操作,而智能手机采用触摸…...
【BUG合集】(一)①数据库存1/0,请求结果返回true和false;②sql查数据库能查,但mybatis查为空;③data64图片存储为异常;
前言 最近,在工作上接手的任务中,各种 bug 问题出现,在解决的同时也可以记录一下。因此,觉得可以出个记录 bug 合集。方便后来者碰到类似情况,可以作为一个参考进行解决。 文章题目就包含当前文章内容中所遇到的三个 b…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
2.Vue编写一个app
1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...
微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
