前段时间看了<高性能MySQL>中的选择优化的数据类型,这里主要是做一下笔记. 首先数据选择有几个简单原则: 更小的通常更好.一般情况下,应该尽量使用可以正确存储数据的最小数据类型.例如只需要存 0~200,tinyint unsigned 更好.更小的数据类型通常更快,因为它们占用更少的磁盘.内存和 CPU 缓存,并且处理时需要的 CPU 周期也更少. 简单就好.简单数据类型的操作通常需要更少的 CPU 周期.例如,整型比字符操作代价更低,因为字符集和校对规则(排序规则)使字符比较 比 整型…
下载原版阿里JAVA开发手册  [阿里巴巴Java开发手册v1.2.0] 本文主要是对照阿里开发手册,注释自己在工作中运用情况. 本文内容:MySQL数据库 (建表规约.索引规约.SQL语句.ORM映射) 本文难度系数为三星(★★★) 本文为第四篇 第一篇 点评阿里JAVA手册之编程规约(命名风格.常量定义.代码风格.控制语句.注释规约) 第二篇 点评阿里JAVA手册之编程规约(OOP 规约 .集合处理 .并发处理 .其他) 第三篇 点评阿里JAVA手册之异常日志(异常处理 日志规约 ) 第四篇…
最近看旧书,李刚那本<轻量级J2EE>在讲解hibernate的时候遇到一个问题,就是与mysql连接后,明明配置了自动建表,却老是建不了表,上网查了发现是方言的原因,到底什么是方言?这里要记录一下. 原来问题是这样的: <?xml version="1.0" encoding="utf-8"?> <!-- 指定Hiberante3映射文件的DTD信息 --> <!DOCTYPE hibernate-configuratio…
数据表:行称为记录  列称为字段 用来存储数据 一.数据类型 数据类型是指列.存储过程参数.表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同的信息类型. 在我们存储不同类型的数据时,为了数据优化存储,需要选择合适的数据类型. 1. 整型 计算机存储方式:二进制 有符号位:数字的最高位用0 1 表达数字是正数或负数 无符号位:不存在负数,永远是正数.范围大致是有符号位的2倍  关键词unsigned 2. 浮点型倍 m:小数点前后数字总位数   d:小数点后位数 eg:float[(…
1.创建表 在操作数据表之前,应该使用"USE 数据库名"指定操作是在哪个数据库中进行 主键约束(唯一标识) ****非空*** ****唯一*** ****被引用****(学习外键时) 约束是添加在列上的,用来约束列的! 主键约束,用于唯一标识对应的记录.在MySQL中,为了快速查找表中的某条信息,可以通过设置主键来实现,就好比身份证可以用来标识人的身份一样. 每个数据表中最多只能有一个主键约束. 在Navicat中按键F6也可以进入命令行 2. 主键自增长 * 因为主键列的特性是:…
mysql建数据库或者建表的时候会遇到选择编码的问题,以前我们都是习惯性的选择utf8,但是在mysql在5.5.3版本后加了utf8mb4的编码,utf8mb4可以存4个字节Unicode,mb4就是most bytes 4的意思.包括Emoji 表情和很多不常用的汉字都可以存储,还可以存储任意新增的Unicode字符,扩展性好啊. 而utf8 编码最大字符长度是 3 字节,如果遇到4个字节的款字符就出幺蛾子了. 而且,utf8mb4是utf8的超集,除了将编码改为utf8mb4外不需要做其他…
五花八门的mysql管理工具<>mysql提供的命令行工具 mysql_install_db:mysql建库工具,在源码安装mysql环节我们使用过. mysql_safe:mysql启动工具 mysqld:mysql主进程,mysql_safe也是调用mysqld进程.启动关闭数据库.查询或修改数据.执行各项维护操作等实际上都是基于mysqld进程的操作. 系统参数:mysql服务启动时的参数 系统变量:mysql服务运行时参数.比如查看与log相关的系统变量使用show global va…
<>mysql复制特性:既可以实现整个服务(all databases)级别的复制,也可以只复制某个数据库或某个数据库中的某个指定的表对象.即可以实现A复制到B(主从单向复制),B再复制到C.也可以实现A直接复制到B和C(单主多从复制),甚至A的数据复制给B,B的数据也复制会A(双主复制) <>mysql复制处理数据时,有三种不同的模式: 1.基于语句复制(Statement Based Replication):基于实际执行的sql语句的模式方案简称SBR 2.基于记录复制(Ro…
<>关键性指标1.IOPS(Input/Output operations Per Second)每秒处理的I/O请求次数:需要说明的一点,通常提到磁盘读写能力,比如形容它每秒读300M写200M这个说的是数据吞吐量(I/O能力的另一个关键指标),但是IOPS指的不是数据吞吐量,它指的是每秒能够处理的I/O请求次数.什么是一次I/O请求呢?举个例子:读写100M的文件就是一次I/O请求,写入1B的数据也是一次I/O请求.IOPS指标越高,那么单位时间内能够响应的请求自然也就越多.从理论上来讲,…
<>初始化选项文件:默认位置:windows平台 windir\my.ini windir可通过echo $WINDIR$查看 系统盘的根目录即:c:\my.ini installdir\my.ini linux/unix平台 /etc/my.cnf /etc/mysql/my.cnf SYSCONFDIR/my.cnf:通过CMake源码编译时指定的SYSCONFDIR参数指定的路径 $MYSQL_HOME/my.cnf ~/.my.cnf:当前用户跟目录下寻找两个参数指定详细的文件路径:…