mysql数据类型学习

整型
整型用来存放整数,根据可以存放的数字大小又分为TINYINT,SMALLINT,MEDIUMINT,INT,BIGINT,每种类型又分为无符号(UNSIGNED)和有符号,
创建一个表,并插入数据,int后面括号里面的数字并不是限制了可存放的数字的大小,而是在查询结果输出的时候会改变输出的格式,方便查看,并且在设置了zerofill的时候才会生效

结果

浮点型
用来存放小数,根据数据范围的大小可分为FLOAT、DOUBLE 和 DECIMAL,和整型一样 UNSIGNED 和 ZEROFILL 也可以作用于浮点型
FLOAT 数值类型用于表示单精度浮点数值,而 DOUBLE 数值类型用于表示双精度浮点数值。
与整数一样,这些类型也带有附加参数:一个显示宽度指示器和一个小数点指示器。比如语句 FLOAT(7,3) 规定显示的值不会超过 7 位数字,小数点后面带有 3 位数字。
对于小数点后面的位数超过允许范围的值,MySQL 会自动将它四舍五入为最接近它的值,再插入它

日期类型
year 类型
插入数据时,注意带上引号的数据有什么不同

time 类型
空格前的数字代表天数

date类型

datetime 类型

timestamp 类型
会随着系统时区的变化而变化

字符串类型
字符串里面类型很多,就记录下其中的几个
char : 固定长度
varchar : 可变长度
从以下的sql看区别

mysql架构学习

服务层:为客户端请求做连接处理,授权认证,安全等
完成线程的管理(线程缓冲池)

核心层:查询解析,分析,优化,缓存,所有内建函数,存储过程,触发器,视图等

查询 -> 缓存 -> 有缓存 -> 返回结果
-> 没有缓存 -> 解析查询 -> 优化 -> 执行查询 -> 返回结果

存储引擎层:存储和提取数据以及事务处理

生成定制的 mysql的rpm 包

mysql 5.6
centos 6.8 minimal

下载 src.rpm 后缀的包
安装所需软件

切换到普通用户

创建rmpbuild目录

解压rpm包文件

进入 rpmbuild 目录

找到 Build full release ,在修改自定义的编译参数,这里以修改数据库支持的字符集为例,如下

改成下面的

或者直接修改最上面变量声明的位置,这里以修改运行用户为例,

修改为

构建 rpm 包

报错了

缺什么安装即可

重新构建

报错

按照提示执行即可

重新构建

报了个这个错

犯二了,加的选项没加 \

重新构建

出现以下的,就ok了

测试能否安装

报错

是已经安装的 mysql-libs 的版本太低,先删除,在安装

复制配置文件

因为在生成 rpm 包的时候,把默认的用户和用户组改成了 mysql1 , 所以在 yum 安装的时候创建了 mysql 的用户,直接启动的时候还是会以 mysql 的身份启动,所以在 my.cnf 中手动指定下 用户

下加一行

启动

看到下面的就 ok 了

安装客户端

在这里查看默认密码

登录,登录之后需要修改密码才能做其他操作

设置密码

允许远程登录

mysql5.6 编译安装

先关闭selinux
编译需要的软件

添加mysql运行的用户

创建mysql数据目录

编译

DCMAKE_INSTALL_PREFIX : 执行文件路径
DMYSQL_DATADIR : 数据存放地址
DSYSCONFDIR : 配置文件目录
WITH_ARCHIVE_STORAGE_ENGINE : 存储引擎
WITH_BLACKHOLE_STORAGE_ENGINE : 存储引擎
WITH_PERFSCHEMA_STORAGE_ENGINE : 存储引擎(分区)
MYSQL_UNIX_ADDR : socket文件路径
ENABLED_LOCAL_INFILE : 是否能使用本地文件
WITH_EXTRA_CHARSETS : 支持的字符集
MYSQL_USER : 运行时的用户

报了下面的错,安装 ncurses-devel 即可

清空下文件,不然还会报错

再执行

显示

即可
报了个警告(不知道有没有影响。。。把 MYSQL_USER 这个选项去掉好像就没有影响了,我没去掉,编译安装之后是正常的)

显示 100% 即可

安装

文件移动到该目录,就能被 service 管理

配置文件

[mysqld] 添加:

安装默认数据表

开启启动

本地推送

发送通知

获取通知传递的值

远程推送

php发送apple远程推送

参考网址:http://wenku.baidu.com/link?url=92uLZLWTQcTJ-ZY9GgwNz8LlLEVP67pdnkP8VJnQrbJhnP7LAGhCbEydVxUkYLmGQdVCFLExG-yuHLjIdkA-S_DPcI-HFUvARK4dX3up36O
还有几个网址,浏览器关了,找不到了,就不贴了
配置证书就不记录了,纪录下证书转换成php能处理的格式的步骤。注意以下步骤有几个需要输入密码的地方,分别有不同的用途,为了避免之后混淆,我都设置成一样了

测试是否能连接苹果的服务器

出现以下即ok,可以继续进行下面的步骤

查看证书是否有效,注意在执行下面命令的时候会输入密码,就是之前设置的密码

出现以下结果即ok,可以进行后续的

php代码

读取文件内容

九宫格字谜