悲观锁与乐观锁

在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。无论是悲观锁还是乐观锁,都是人们定义出来的概念,可以认为是一种思想。其实不仅仅是数据库系统中有乐观锁和悲观锁的概念,像memcache、hibernate、tair等
阅读本文

SQLAlchemy 使用

1 定义模型在 ORM 中,模型一般是一个 Python 类, 代表数据库中的一张表, 类中的属性对应数据库表中的列。Flask-SQLAlchemy 创建的数据库实例为模型提供了一个基类db.Model以及一系列辅助类和辅助函数,可用于定义 模型/表 的结构。下面的例子定义了两个表,一个是用户角色,一个是用户信息class Role(db.Model): __tablename_
阅读本文

PostgreSQL Table Partitioning<转>

典型使用场景  随着使用时间的增加,数据库中的数据量也不断增加,因此数据库查询越来越慢。  加速数据库的方法很多,如添加特定的索引,将日志目录换到单独的磁盘分区,调整数据库引擎的参数等。这些方法都能将数据库的查询性能提高到一定程度。  对于许多应用数据库来说,许多数据是历史数据并且随着时间的推移它们的重要性逐渐降低。如果能找到一个办法将这些可能不太重要的数据隐藏,数据库查询速度将会大幅提高。可以通
阅读本文

Laravel5.1 配置数据库和Migration

在laravel中 我们可以在项目根目录的.env文件中更改我们的配置。打开.env文件后找到DB为前缀的几个字段,来更改我们的配置,如果想做更多的配置 可以到configdatabase.php中修改。配置好后我们来初始化数据库,使用laravel自带的迁移来生成user和password表:php artisan migrate执行此命令后会发现数据库多了user和password表,这样
阅读本文

用jsp实现网站登录界面的制作,并连接数据库

这里介绍一下怎样连接数据库,并用jsp制作一个简单的登录界面1.首先需要搭建好环境,有Tomcat,eslipse,jdk等,并配置好环境变量,并安装好数据库,这里我使用的数据库是mysql数据库,并下载了一个MySQL的图形界面的软件,当上面的准备工作完成后就可以开始做了。2.(1)首先应该连接好数据库这是数据库的图形显示界面, (2)打开后首先创建一个mysql新连接。 (3)然后在这个界面设
阅读本文

计算机基础:数据库

1、超键、候选键、主键、外键超键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。候选键:是最小超键,即没有冗余元素的超键。主键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null)。外键:在一个表中存在的另一个表的主键称此表
阅读本文

怎样设计一个好的数据库

数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。  在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。一、数据库和信息系统   (1)数据库是信息系统的核心和基础,把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的
阅读本文

数据库中并发控制与事务

数据库中并发控制和事务,经常会在面试中被问到;面试是一方面,但是数据库中这2方面的基础知识也必须要搞清楚,才能很好地指导自己平时日常工作。下面我总结下,这2天我遇到的问题,基本上是知识要点的梳理。并发控制基本理论和概念:在处理并发或者写时,可以通过实现由2种类型锁组成的锁系统来解决问题;这2种类型锁通常称为共享锁和排他锁,也叫做读锁和写锁。读锁是共享的,相互不阻塞的,多个客户可以同时读取同一个资源
阅读本文

数据库水平切分的实现原理解析——分库,分表,主从,集群,负载均衡器

第1章 引言随着互联网应用的广泛普及,海量数据的存储和访问成为了系统设计的瓶颈问题。对于一个大型的互联网应用,每天几十亿的PV无疑对数据库造成了相当高的负载。对于系统的稳定性和扩展性造成了极大的问题。通过数据切分来提高网站性能,横向扩展数据层已经成为架构研发人员首选的方式。 水平切分数据库:可以降低单台机器的负载,同时最大限度的降低了宕机造成的损失; 负载均衡策略:可以降低单台机器的访问负载,降低
阅读本文

Yii2 将日志记录到数据库中

Yii2默认日志记录到文件中,通过配置log组件来重新将日志保存到数据库中打开config目录下console.php文件,修改log配置 ‘log‘ => [ ‘targets‘ => [ [ ‘class‘ => ‘yiilogDbTarget‘,
阅读本文

SQL Server tempdb 数据库位置迁移

SQL Server tempdb 数据库位置迁移 --查看物理位置 SELECT name, physical_name FROM sys.master_files WHERE database_id = DB_ID(‘tempdb‘); --修改路径 ALTER DATABASE tempdb MODIFY FILE (NAME = tempdev, FILENAME = ‘D:Data
阅读本文

Oracle数据库迁移流程

公司最近要迁移测试环境服务器,刚好最近手上任务比较少,领了一个任务实践一下。目的:将几个测试环境的Orcle数据库都迁移到新服务器上。流程:1、在新服务器安装Oracle。1)先下载Oracle安装包。可以到官网下载,不过看了下2G还挺大的,就去原有测试环境服务器找了下,果然有保存,直接复制粘贴到新服务器。一个小时搞定。2)安装Oracle,并测试是否安装成功。2、对目标Oracle数据库进行字符
阅读本文

Oracle新建数据库,并导入dmp文件

1:安装Oracle及新建数据库Oracle 11g安装图解 http://jingyan.baidu.com/article/380abd0aadb63a1d90192cec.htmlOracle图形化新建数据库 http://jingyan.baidu.com/article/90bc8fc80c01f2f653640c1f.html2:数据库建立成功之后,新建表空间,临时表空间,分区表空间
阅读本文

数据库概念篇

1、绪论 数据:描述现实实物的符号。 数据管理:对数据经行分类、组织、编码、存储、检索和维护,是数据处理的中心问题。 数据模型 现实世界数据特征的抽象(模拟)。分为:一类是概念模型(别名信息模型,用于数据库设计),另一类是数据模型:逻辑模型(包括层次、网状、关系、面向对象、对象关系模型等,用于数据库的实现)、物理模型(数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方
阅读本文

数据库-------->如何设计数据库:建立关系模型

第一部分 基础知识点概述:  想要设计出性能较好的数据库,首先要熟记以下知识点。基础知识点: 数据表中不能有完全相同的两行记录(至少应有不同的关键值)  一个单元格中只能有一个值,不能同时有多个值(例:某个单元格中有多个电话号码,这是不行的)    要了解描述数据库的若干术语:不同的人员对数据库的同一个内容可能有不同的叫法,下面列举了几种等价的描述方法。
阅读本文

MySQL 基础 1

SQL  SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。  在数据库系统中,SQL语句不区分大小写(建议用大写) 。但字符串
阅读本文

2016 校园招聘求职经历(二)

概述航信是一家国企,给人的印象是比较踏实,不过也感觉缺乏活跃性。我是航信第一批校招去,同样它也是我面试的第一家公司。宣讲会9月27日,下午2:30开始宣讲会,大约持续了30分钟左右,整个感觉是一家比较踏实的公司,但同时又比较缺乏活跃性。中间比较搞笑的一句是“公司隶属国资委,必要时期,军方直接接管”。薪资待遇6~8万,不要妄想工资会取上限。笔试宣讲会完了,直接现场笔试。爽快。面试题涉及的内容:jav
阅读本文

JAVA面试,项目面试

一 数据库 (1)数据库的密码加密:单向加密,insert into users (username,password) values (‘mike’,MD5(‘guessme’));(2)双向加密:insert into users (username ,password) values (‘mike’,ENCODE(‘guessme’,’abanaafn’));(3)SQL筛选查询:selec
阅读本文

使用SQL脚本创建数据库,操作主键、外键与各种约束(MS SQL Server)

在实际开发中,可能很少人会手写sql脚本来操作数据库的种种。特别是微软的MS SQL Server数据库,它的SQL Server Management Studio对数据库的图形化操作极致简便,从而导致很多人都不会或不熟悉使用SQL脚本操作数据库。接下面介绍的是我们日常开发中常规性的各种操作,先看看基本知识,随后使用coding来表述。SQL Server 常见五种约束:  Primary Ke
阅读本文