数据库
permike
adsfdfsadfasdfasdfsdfasdf
展开
-
【Mysql】Datetime和Timestamp区别,及mysql中各种时间的使用
说到数据库时间类型,大部分同学都会想到date、datetime、timestamp之类的。我之前在项目遇到一个问题,测试同事在测试时,由于会测试205几年的数据,在入库时会抛出数据库异常,原因就是timestamp是有最大年份限制的。下面先说说datetime与timestamp的区别:datetime的默认值为null,timestamp的默认值不为null,且为系统当前时间(cu...原创 2020-02-17 17:35:44 · 859 阅读 · 0 评论 -
SQL四种语言:DDL,DML,DCL,TCL
1.DDL(Data Definition Language)数据库定义语言statements are used to define the database structure or schema.DDL是SQL语言的四大功能之一。用于定义数据库的三级结构,包括外模式、概念模式、内模式及其相互之间的映像,定义数据的完整性、安全控制等约束DDL不需要commit.CR原创 2016-08-12 13:52:03 · 322 阅读 · 0 评论 -
使用redis做MySQL的缓存
1.脚本同步:自己写脚本将数据库数据写入到redis/memcached。这就涉及到实时数据变更的问题(mysql row binlog的实时分析),binlog增量订阅Alibaba 的canal ,以及缓存层数据 丢失/失效 后的数据同步恢复问题。2.业务层实现:先读取nosql缓存层,没有数据再读取mysql层,并写入数据到nosql。nosql层做好多节点分布式(一原创 2016-08-23 21:09:56 · 7967 阅读 · 0 评论 -
mysql索引总结----mysql 索引类型以及创建
关于MySQL索引的好处,如果正确合理设计并且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。对于没有索引的表,单表查询可能几十万数据就是瓶颈,而通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非常缓慢。还是以WordPress来说,其多个数据表都会对经常被查询的字段添加索引,比如wp_comments表中针对5个字段设计了BTR原创 2016-08-23 21:02:51 · 842 阅读 · 0 评论 -
数据索引
数据分类:对于日常生活中的数据,我们可以大致分为如下三大类:结构化数据、非结构化数据、半结构化数据:结构化数据:指具有固定格式或有限长度的数据,如数据库行数据:存在数据库中,可以用二维表结构来逻辑表达实现的数据非结构化数据:指不定长度或者无固定格式的数据,如邮件、word文档、音频、超音频等半结构化数据:对于这种数据可以按照结构化数据来处理,也可以提取纯文本按照非结原创 2016-08-11 18:08:01 · 467 阅读 · 0 评论 -
使用SQLAlchemy
数据库表是一个二维表,包含多行多列。把一个表的内容用Python的数据结构表示出来的话,可以用一个list表示多行,list的每一个元素是tuple,表示一行记录,比如,包含id和name的user表:[ ('1', 'Michael'), ('2', 'Bob'), ('3', 'Adam')]Python的DB-API返回的数据结构就是像上面这样表示的。原创 2016-08-10 16:35:01 · 489 阅读 · 0 评论 -
MongoDB基本命令用
成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操作。输入help可以看到基本操作命令:show dbs:显示数据库列表 show collections:显示当前数据库中的集合(类似关系数据库中的表) show users:显示用户use :切换当前数据库,这和MS-SQL里面的意思一样 db.help():显示数据库操作命原创 2016-06-07 12:59:30 · 500 阅读 · 0 评论 -
Python调用MongoDB使用心得
本文是一个Python 使用MongoDB的简单教程,将使用pymongo对MongoDB进行的各种操作进行了简单的汇总,NoSQLFan进行了简单整理,使用Python的同学可以看一看。下载相应平台的版本,解压即可。为方便使用,将bin路径添加到系统path环境变量里。其中mongod是服务器,mongo是客户shell,然后创建数据文件目录:在c盘下创建data文件夹,里面创建db原创 2016-06-07 12:57:29 · 2722 阅读 · 0 评论 -
mysql优化,不用怕面试题了
第一方面:30种mysql优化sql语句查询的方法1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中使用!=或 3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num i原创 2016-04-30 19:18:33 · 384 阅读 · 0 评论 -
postgre定时备份
需要切换用户postgres,pg_dump命令-----脚本:#!/bin/bash# /backup.shcur-time=`date +'%Y%m%d'`pg_dump > /backup.dumpecho 'postgre backup finished'----使用crontab定时crontab -e编辑配置文件0 0 * * *原创 2016-11-10 18:14:55 · 501 阅读 · 0 评论 -
Django 数据库访问性能优化
Django的数据库层提供了很多方法来优化数据库访问的性能,这篇文章将集中介绍这方面的内容。1.使用标准的数据库优化技术在进行Django数据库访问性能优化之前,首先应该使用标准的数据库技术对其进行优化,比如给字段加索引,通过使用django.db.models.Field.db_index 来给一个Django模型类的字段加索引,设置这个属性字段的Field.db_index=True。原创 2017-01-16 10:29:04 · 602 阅读 · 0 评论 -
MySQL脏读、虚读、幻读
事务的特性:原子性:指处于同一个事务中的多条语句是不可分割的。 一致性:事务必须使数据库从一个一致性状态变换到另外一个一致性状态。比如转账,转账前两个账户余额之和为2k,转账之后也应该是2K。 隔离性:指多线程环境下,一个线程中的事务不能被其他线程中的事务打扰 持久性:事务一旦提交,就应该被永久保存起来。事务隔离性问题:如果不考虑事务的隔离性,会出现以下问题:脏读:指一个线程中...原创 2019-08-05 10:21:40 · 289 阅读 · 0 评论 -
Django-Model操作数据库(增删改查、连表结构)
一、数据库操作1、创建model表 基本结构123456from django.db import models class userinfo(models.Model): #如果没有models.AutoField,默认会创原创 2017-08-31 10:36:58 · 1477 阅读 · 0 评论 -
golang时间格式化
golang时间处理相关包 "time" 当前时间戳fmt.Println(time.Now().Unix())# 1389058332当前格式化时间 fmt.Println(time.Now().Format("2006-01-02 15:04:05")) # 这是个奇葩,必须是这个时间点, 据说是go诞生之日, 记忆方法:6-1-2-3-4-5# 201原创 2017-06-21 14:21:13 · 81220 阅读 · 4 评论 -
PostgreSql数据库的索引
PostgreSql数据库的索引分为B-tree, Hash, GiST,SP-GiST and GIN。这边先只讨论b-tree索引。B-tree是最常用的的索引,并且PG在创建索引时如果没有明确的指定索引的类型那么默认就是b-tree(B树索引)索引,如: Create index index_nameon table_name(column_name,[…]);B-tree原创 2017-02-15 18:12:00 · 911 阅读 · 0 评论 -
索引原理
一.索引原理: 为认识索引工作原理,首先有必要对数据表的基本结构作一次全面的复习。 当一个新表被创建之时,系统将在磁盘中分配一段以8K为单位的连续空间,当字段的值从内存写入磁盘时,就在这一既定空间随机保存,当一个8K用完的时候,SQLS指针会自动分配一个8K的空间。这里,每个8K空间被称为一个数据页(Page),又名页面或数据页面,并分配从0-7的页号,每个文件的原创 2017-02-15 18:09:23 · 320 阅读 · 0 评论 -
MySQL--锁、事务、隔离级别
1.锁为什么需要锁?因为数据库要解决并发控制问题。在同一时刻,可能会有多个客户端对表中同一行记录进行操作,比如有的在读取该行数据,其他的尝试去删除它。为了保证数据的一致性,数据库就要对这种并发操作进行控制,因此就有了锁的概念。1.1锁的分类从对数据操作的类型(读\写)分读锁(共享锁):针对同一块数据,多个读操作可以同时进行而不会互相影响。写锁(排他锁):当前写操原创 2016-09-01 14:37:00 · 785 阅读 · 0 评论 -
PostgreSQL整体架构
以下是对PostgreSQL整体架构进行粗略的剖析,供大家参考: PostgreSQL的配置结构:PostgreSQL采用的是经典的C/S架构模型,主体是由一个守护监听进程Postmaster,若干个前端应用程序(比如PostgreSQL的客户端,DBMS等)和后段服务器进程(PostgreSQL服务器本身)所组成。大体宏观上的连接过程如下:前端数据库应用程序要访问数据库,首原创 2017-02-17 13:18:57 · 4554 阅读 · 0 评论 -
MySQL数据库30条规范解读
军规适用场景:并发量大、数据量大的互联网业务军规:介绍内容解读:讲解原因,解读比军规更重要 一、基础规范(1)必须使用InnoDB存储引擎解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高 (2)必须使用UTF8字符集解读:万国码,无需转码,无乱码风险,节省空间 (3)数据表、数原创 2017-02-17 09:26:34 · 1245 阅读 · 0 评论 -
淘宝网自主开发数据存储系统
Tair是由淘宝网自主开发的Key/Value结构数据存储系统,在淘宝网有着大规模的应用。您在登录淘宝、查看商品详情页面或者在淘江湖和好友“捣浆糊”的时候,都在直接或间接地和Tair交互。Tair的功能Tair是一个Key/Value结构数据的解决方案,它默认支持基于内存和文件的两种存储方式,分别和我们通常所说的缓存和持久化存储对应。Tair除了普通Key/Value系统提供的功能,比原创 2016-04-15 14:08:21 · 5682 阅读 · 0 评论 -
数据中心解决方案安全技术
技术特色在这种咄咄逼人的安全形势下,数据中心需要一个全方位一体化的安全部署方式。H3C数据中心安全解决方案秉承了H3C一贯倡导的“安全渗透理念”,将安全部署渗透到整个数据中心的设计、部署、运维中,为数据中心搭建起一个立体的、无缝的安全平台,真正做到了使安全贯穿数据链路层到网络应用层的目标,使安全保护无处不在。H3C数据中心安全解决方案的技术特色可用十二个字概括:三重保护、多层防御;分区规划原创 2016-04-14 16:00:20 · 38600 阅读 · 0 评论 -
mysql数据库优化小结
一、常见数据库的优化操作1、表的设计要符合三范式。2、添加适当的索引,索引对查询速度影响很大,必须添加索引。主键索引,唯一索引,普通索引,全文索引3、添加适当存储过程,触发器,事务等。4、读写分离(主从数据库)5、对sql语句的一些优化,(查询执行速度比较慢的sql语句)6、分表分区分表:把一张大表分成多张表。分区:把一张表里面的分配到不同的区域存储,7、对mysq原创 2016-01-06 14:23:34 · 419 阅读 · 0 评论 -
优化MYSQL数据库的方法(网络回答)
1、选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置NOT NULL,例如'省份,性别',最好设置为ENUM2、使用连接(JOIN)来代替子查询:a.删除没有任何订单客户:DELETE FROM customerinfo WHERE customerid NOT in(SELECT customerid FROM orderinfo)b.提取所有没有订单客户:SELECT原创 2016-01-06 14:21:07 · 523 阅读 · 0 评论 -
mysql索引总结----mysql 索引类型以及创建
文章归属:http://feiyan.info/16.html,我想自己去写了,但是发现此君总结的非常详细。直接搬过来了关于MySQL索引的好处,如果正确合理设计并且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。对于没有索引的表,单表查询可能几十万数据就是瓶颈,而通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非常缓原创 2016-01-06 14:19:55 · 485 阅读 · 0 评论 -
理解MySQL——索引与优化
写在前面:索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点。考虑如下情况,假设数据库中一个表有10^6条记录,DBMS的页面大小为4K,并存储100条记录。如果没有索引,查询将对整个表进行扫描,最坏的情况下,如果所有数据页都不在内存,需要读取10^4个页面,如果这10^4个页面在磁盘上随机分布,需要进行10^4次I/O,假设磁盘每次I/O时间为10ms(忽略数据传输时间),原创 2016-01-06 14:18:48 · 390 阅读 · 0 评论 -
深入了解mysql
本文配图来自《高性能MySQL(第二版)》。在数据库中,对性能影响最大的几个策略包括数据库的锁策略、缓存策略、索引策略、存储策略、执行计划优化策略。索引策略决定数据库快速定位数据的效率,存储策略决定数据持久化的效率。MySQL中两大主要存储引擎MyISAM和InnoDB采用了不同的索引和存储策略,本文将分析它们的异同和性能。MySQL主要提供2种方式的索引:B-Tree(包原创 2015-11-26 15:32:22 · 354 阅读 · 0 评论 -
mysql索引、存储方式对性能的影响
本文配图来自《高性能MySQL(第二版)》。在数据库中,对性能影响最大的几个策略包括数据库的锁策略、缓存策略、索引策略、存储策略、执行计划优化策略。索引策略决定数据库快速定位数据的效率,存储策略决定数据持久化的效率。MySQL中两大主要存储引擎MyISAM和InnoDB采用了不同的索引和存储策略,本文将分析它们的异同和性能。MySQL主要提供2种方式的索引:B-Tree(包原创 2015-11-26 15:05:45 · 2778 阅读 · 0 评论 -
数据库设计中一个矛盾:数据库外键,用还是不用
最近在做一个派单系统数据库设计,在设计中有些疑惑的地方中午在网上发起一个话题讨论. 我把这个讨论流程.发过来 大家可以可以看看.也可以发表一下自己的意见.对于主/外键/索引来说,在一些开发团队中被认为是处理数据库关系的利器,也被某些开发团队认为是处理某些具体业务的魔鬼,您的观点呢?在实际应用中您会采取哪种方式?大家共同观点:主键和索引是不可少的,不仅可以优化数据检索速度转载 2015-07-24 11:54:06 · 8397 阅读 · 6 评论 -
Android中Cursor类的概念和用法
使用过 SQLite 数据库的童鞋对 Cursor 应该不陌生,如果你是搞.net 开发你大可以把Cursor理解成 Ado.net 中的数据集合相当于dataReader。今天特地将它单独拿出来谈,加深自己和大家对Android 中使用 Cursor 的理解。关于 Cursor在你理解和使用 Android Cursor 的时候你必须先知道关于 Cursor 的几件事情:转载 2014-12-25 21:02:53 · 480 阅读 · 0 评论 -
MySQL数据库十大优化技巧
1. 优化你的MySQL查询缓存在MySQL服务器上进行查询,可以启用高速查询缓存。让数据库引擎在后台悄悄的处理是提高性能的最有效方法之一。当同一个查询被执行多次时,如果结果是从缓存中提取,那是相当快的。但主要的问题是,它是那么容易被隐藏起来以至于我们大多数程序员会忽略它。在有些处理任务中,我们实际上是可以阻止查询缓存工作的。1. // query cache does NOT wor原创 2016-01-06 14:25:10 · 729 阅读 · 1 评论 -
python操作MySQL数据库(MySQLdb
坚持每天学一点,每天积累一点点,作为自己每天的业余收获,这个文章是我在吃饭的期间写的,利用自己零散的时间学了一下python操作MYSQL,所以整理一下。我采用的是MySQLdb操作的MYSQL数据库。先来一个简单的例子吧:12345678910import MySQLdb try: co原创 2016-01-06 14:35:30 · 520 阅读 · 0 评论 -
数据库架构的演变
最近看了很多公司架构的演变的文章,发现其中的基本思路和架构演变都很类似,这里也总结一下数据库架构的演变以及演变背后的思路。单主机最开始网站一般都是由典型的LAMP架构演变而来的,一般都是一台linux主机,一台apache服务器,php执行环境以及mysql服务器,一般情况下,这些都在一台虚拟主机上,简称单主机模式。单主机模式缺点:1 web服务器和mysql服务器公用一台主机原创 2016-04-13 15:52:29 · 3549 阅读 · 1 评论 -
去 IOE,MySQL 完胜 PostgreSQL
前言上周参加了2015年的中国数据库大会,差不多从第二届开始就每年都会北京参会,从最早的嘉宾到这次的会场主持人,也算见证了中国数据库大会的发展吧。记得最早的时候大会只有两天,分会场也比较小,而现在各种大会变为了三天,分会场也越来越细化,赞助商也从以前的出版社演变为各种高大上的软硬件公司,这是主办方的成功,也是整个数据库从业人员的骄傲。然而,这次会议讨论的最多的依然是去IOE问题,但是原来的主角转载 2016-04-13 13:41:52 · 532 阅读 · 0 评论 -
MySQL索引总结
在数据库表中,对字段建立索引可以大大提高查询速度。假如我们创建了一个 mytable表:复制代码 代码如下:CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NULL );我们随机向里面插入了10000条记录,其中有一条:5555, admin。在查找username="admin"的记录原创 2016-02-14 16:48:00 · 429 阅读 · 0 评论 -
MySQL自带的性能压力测试工具mysqlslap详解
PS:今天一同事问我有木有比较靠谱的mysql压力测试工具可用。其实mysql自带就有一个叫mysqlslap的压力测试工具,还是模拟的不错的。下面举例说说。mysqlslap是从5.1.4版开始的一个MySQL官方提供的压力测试工具。通过模拟多个并发客户端访问MySQL来执行压力测试,同时详细的提供了“高负荷攻击MySQL”的数据性能报告。并且能很好的对比多个存储引擎在相同环境下的并发压力性能差原创 2016-01-29 17:49:13 · 10836 阅读 · 0 评论 -
几个常见的MySQL性能测试工具
几个常见的MySQL性能测试工具MySQL性能测试是我们经常需要用到的,下面就为您介绍几个比较常用的MySQL性能测试工具,如果您对此感兴趣的话,不妨一看。三个MySQL性能测试工具:The MySQL Benchmark Suite、MySQL super-smack、MyBench。除了第一个为MySQL性能测试工具,其他两个都为压力测试工具。1. The MySQL原创 2016-01-29 17:46:47 · 6170 阅读 · 0 评论 -
数据库优化
1、1、调整数据结构的设计。这一部分在开发信息系统之前完成,程序员需要考虑是否使用ORACLE数据库的分区功能,对于经常访问的数据库表是否需要建立索引等。 2、2、调整应用程序结构设计。这一部分也是在开发信息系统之前完成,程序员在这一步需要考虑应用程序使用什么样的体系结构,是使用传统的Client/Server两层体系结构,还是使用Browser/Web/Database的三层体系结构。不原创 2016-01-29 17:28:49 · 418 阅读 · 0 评论 -
Mysql 数据库缓存cache功能
作者: scofield 原文:Mysql 数据库缓存cache功能总结[转]版权所有,转载时必须以链接形式注明作者和原出处并保留本声明。mysql cache功能分析:1 mysql的cache功能的key的生成原理是:把select语句按照一定的hash规则生成唯一的key,select的结果生成value,即 key=>value。所以对于cache而言,se原创 2016-01-28 15:32:03 · 1339 阅读 · 0 评论 -
MySQL数据库性能优化之缓存参数优化
在平时被问及最多的问题就是关于MySQL数据库性能优化方面的问题,所以最近打算写一个MySQL数据库性能优化方面的系列文章,希望对初中级MySQL DBA以及其他对MySQL性能优化感兴趣的朋友们有所帮助。数据库属于IO密集型的应用程序,其主职责就是数据的管理及存储工作。而我们知道,从内存中读取一个数据库的时间是微秒级别,而从一块普通硬盘上读取一个IO是在毫秒级别,二者相差3个数量级。所以,要原创 2016-01-28 15:31:10 · 426 阅读 · 0 评论 -
Android数据存储的方法总结诶
无论是神马平台,神马开发环境,神马软件程序,数据都是核心。对于开发平台来讲,如果对数据的存储有良好的支持,那么对应用程序的开发将会有很大的促进作用。总体的来讲,数据存储方式有三种:一个是文件,一个是数据库,另一个则是网络。其中文件和数据库可能用的稍多一些,文件用起来较为方便,程序可以自己定义格式;数据库用起稍烦锁一些,但它有它的优点,比如在海量数据时性能优越,有查询功能,可以加密,可以加锁转载 2014-12-06 13:44:53 · 588 阅读 · 0 评论