【HCIA Gauss】学习汇总-数据库管理(数据库基本概念)-3
数据库:操作系统文件或磁盘数据块的集合
数据库实例: 指操作系统中一系列进程以及为这些进程分配的内存块
通常来说一个数据库实例对应着一个数据库【数据库实例是访问数据的通道】
多实例:利用多实例 可以充分利用硬件资源 让服务器性能最大化
数据库连接和会话
数据库连接: 物理层面的通信连接,指的是一个通过网络建立客户端和专有服务器或调度器的网络连接
数据库会话: 客户端和数据库之间通讯的逻辑概念 上下文:位于服务器端 记录了本次连接客户端机器的IP地址 端口 进程等用户信息
数据库连接池
建立连接是有代价的:频繁的建立和关闭连接 会降低性能 使连接资源的释放和建立成为瓶颈
连接池:数据库连接的复用 允许应用程序重复使用现有的数据库连接 而不是创建新的
Schema是数据库 对象的集合
把数据库对象组成逻辑组 ,便于管理,
允许多个用户使用一个数据库 相互间不影响
形成命名空间 避免对象名冲突
包含数据库,对象数据类型 函数 操作符等
表空间 tablespace 由一个或者多个数据文件组成
#创建表空间 表空间满128M 自动扩展
create tablespace human_resouce datafile '/data/humanspace' size 128M autoextend on next 128M ;
表空间作用:根据数据对象使用模式安排数据物理存放位置 提高性能
通过表空间指定数据占用物理磁盘空间
create table eduttion(stff_id int,grate_school varchar(64) ) tablespcae human_resource #指定表空间
表:二维数组集合
行存储 适用于OLTP便于点查询 只需要查询所需要列信息便于大量写操作
列存储 适用于OLAP 便于分析类查询
临时表:会话临时表 事务级临时表
临时表为了存储临时会话或者 一个事务中需要的数据
当会话退出的时候 数据会清空但是表结构仍然存在
create global temporary table tablename{,,,,,,} 临时表关键词
on commit preserve rows;# 会话级临时表
on commit delete rows ; # 事务级临时表
nologing表 示指nologing关键字或者nologing表空间
nologing表不记录redo日志 redo记录修改后的数据 undo记录修改前的数据
1、日志量减少提高数据写性能
2、没有redo日志 数据库重启后无法重演恢复
3、适用于可靠性不是特别高的数据
分区 改善查询 增强可用性 增强维护
数据分布
GaussDB 100 数据分布是分散在所有DN上的 所以创建表时 需要指定分布列
create table student(id int,name char(8)) distribute by hash|replicatiton|List |Range
1、Hash 通过Hash算法分布
2、replication 每个DN都有一份全量
3、list 表数据通过list方式分布DN节点上
4、Range 通过range方式分布
视图 不保存数据 虚拟表 create view as selecr * from table 安全 便于查询
索引 explain 查看是否使用索引
唯一索引 多字段索引 部分索引 表达式索引
约束
not null 非空 ,unique/primary key 主键 ,foreign key 外键 ,check 检查约束 ,default 默认
事务
失败:rollback 回滚
成功: commit 提交事务
ACID 原子性 一致性 隔离性 持久性
数据不一致 1、脏读 事务二读取到事务一未提交的数据 2、不可重复读 3、幻影读
事务隔离级别 避免数据不一致的问题
1、序列化 串行方式逐个执行 缺点:并发下降
2、可重复读 事务开始 不允许其他事务修改
3、已提交读
4、未提交读
思考
【HCIA Gauss】学习汇总-数据库管理(数据库基本概念)-3的更多相关文章
- 【HCIA Gauss】学习汇总-数据库管理(数据库设计 范式 索引 分区)-7
zsql user/pasword@ip:port -c "show databases" # 展示一条sql语句 spool file_path 指定输出文件 可以为相对路径 s ...
- 【HCIA Gauss】学习汇总-数据库管理-2
数据库管理目标:稳定 安全 数据一致性 系统高性能 数据库管理员 数据库管理范围 :数据库管理对象1.物理设计工作 2.物理实现工作 对象是指 :数据库里 存储和指向数据的各种概念和结构的总称 对象管 ...
- 【HCIA Gauss】学习汇总-数据库管理(事务 权限 审计 OBDC JDBC)-6
事务控制事务提交 commit事务回滚 rollback savepoint 用于事务设置保存点 ----> savepoint s1 / savepoint s2 rollback to sa ...
- 【HCIA Gauss】学习汇总-数据库管理(SQL语法 数据类型 函数)-4
DDL data definition language 数据库定义语言 定义修改等DML data manipulation language 数据库操控语言 增删改 DCL data crontr ...
- 【HCIA Gauss】学习汇总-数据库管理(SQL语法 库表 索引操作)-5
# 简单查询select * from table_reference # 创建表 create table TB(staff_id int primary key , course_name cha ...
- mysql之数据库基本概念(mysql学习笔记一)
数据库系统 数据库管理系统(DBMS)+数据库(DATABASE)(+数据库管理员) DBS=dbms+db 定义: 大量信息进行管理的高效解决方案,按照数据结构来组织.存储和管理数据的仓库 关系 ...
- Symfony2学习笔记之数据库操作
数据库和Doctrine让我们来面对这个对于任何应用程序来说最为普遍最具挑战性的任务,从数据库中读取和持久化数据信息.幸运的是,Symfony和Doctrine进行了集成,Doctrine类库全部目标 ...
- ABP 学习汇总
本文背景 公司最近规划的新框架准备基于ABP来搭建,自从在阳铭博客看到ABP框架的介绍后,就一直持续关注着,但还没真正在实际项目中直接使用ABP,只是自己做了一些学习和Demo.ABP所用到的一些新技 ...
- mysql学习5:数据库设计
mysql学习5:数据库设计 本文转载:https://blog.51cto.com/9291927/2087925:原创为天山老妖S 一.数据库设计简介 按照规范设计,将数据库的设计过程分为六个阶段 ...
随机推荐
- MySQL之SQL语句的使用
SQL使用 mysql中的基本逻辑对象 mysql有这么几种对象 mysqld--->库---->表---->记录(由行和列组成)一条记录中的一列叫做字段 什么是关系型数据库 表与表 ...
- SQL Server跨服务器操作数据库
今天给大家来分享一下跨服务器操作数据库,还是以SQL Server的管理工具(SSMS)为平台进行操作. 什么是跨服务器操作? 跨服务器操作就是可以在本地连接到远程服务器上的数据库,可以在对方的数据库 ...
- java面试 (六)
1 String.split(String regex), 传入的参数是正则表达式,有一些特殊字符(比如.[]()\| 等)需要转义. 2 关于枚举类型,一般用作常量,理想情况下,枚举中的属性字段是 ...
- react-redux源码学习
React-redux 源码学习 version 7.0.3 目录 Provider connect mapStateToProps mapDispatchToProps mergeProps opt ...
- 文件上传速度查询方法(watch工具)
由于业务迁移,需要将大量文件拷贝到目标机器上的/mnt目录,在拷贝过程中,想要查看上传的速度,做法如下:[root@mail01 ~]# du -sh /mnt5.6G /mnt[root@mail0 ...
- 第4/7Beta冲刺
1.团队成员 成员姓名 成员学号 秦裕航 201731062432(组长) 刘东 201731062227 张旭 201731062129 王伟 201731062214 2.SCRU部分 2.1各成 ...
- 【LeetCode】最长回文子串【动态规划或中心扩展】
给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 1: 输入: "babad"输出: "bab"注意: " ...
- Jackson 动态Bean
为了解决json字符串有很多属性, 但是不必每个属性都映射到pojo的属性. @JsonProperty : 标记一个方法是一个属性的getter或setter方法, 也即把java属性和json域关 ...
- 《TCP/IP - OSI和TCP/IP分层模型》
一:分层模型 - - OSI 更强调:通信协议必要的功能是什么 - TCP/IP 更强调:在计算机上实现协议应该开发哪种程序 二:为什么会产生协议标准化 (分层模型的产生)? - 由于各个厂商生产 ...
- 面试官问你MySQL的优化,看这篇文章就够了
作者:zhangqh segmentfault.com/a/1190000012155267 一.EXPLAIN 做MySQL优化,我们要善用 EXPLAIN 查看SQL执行计划. 下面来个简单的示例 ...