C/C++ Y/N 重复输入功能实现
Y/N :最好使用char数组进行实现 1 /************************************************************************* 2 > File Name: YN.cpp 3 > Author: gaopeng 4 > Mail: gaopp_200217@163.com 5 > Created Time...
关于C/C++ void指针,使用void指针拷贝int 数组
在C/C++中void代表的就是无类型或者为空,作为void *p这样的定义则说明这个指针只包含了指针位置而不包含指针的类型,一般的指针包含2个属性指针位置和类型,其中类型就能判断出其长度。借用网友的总结如下,我觉得总结得非常好。1.void指针是一种特别的指针 void *vp //...
关于C/C++ int (*t5)[3] 指针类型说明
程序如下: 8 #include<iostream> 9 #include <unistd.h> 10 using namespace std; 11 12 13 int main(void) 14 { 15 unsigned int *t1 = new unsigned int[10]; 16 unsigned int t2[3]={1,2,3}; 17 ...
关于C++ delete 来释放new分配的内存
一般在C语言中我们使用malloc和free进行内存分配和释放,但是在C++中增加了一个新的new和delete 操作来进行,按照C++的说法delete是释放内存但是指针得到保留,防止内存泄露,并且NEW和DELETE要成对出现。我们知道指针本生也是一个保存在内存中某个位置的变量,如果释放了内存我们是否可以考虑为其中的值得到了删除,而...
关于ORACLE和MYSQL中文字符乱码的根源剖析
关于数据库的字符集问题一直都是一个比较恶心的问题,如果不了解其实质可能一直都搞不清楚这个问题的根源,只能出了问题去度娘,这里我打算兼容ORACLE和MYSQL对字符集的处理来描述乱码出现的情形和如何防止乱码问题出现的可能,本文只用UTF-8和GBK为例子进行描述,请大家先记住'去'这个字的UTF8和GBK编码,因为整个文章...
关于MYSQL中FLOAT和DOUBLE类型的存储
关于MYSQL中FLOAT和DOUBLE类型的存储其实在单精度和双精度浮点类型存储中其存储方式和C/C++一致准守IEEE标准他们都是浮点型的,所谓的浮点型,是小数点的位置可变,其能够表示的范围比定点小数要广得多,而存储空间节省,但是受到精度的影响,所以在严格的数据中尽量使用定点小数mysql decimal(m,d)类型,ORACLE压...
为什么MYSQL timestamp取值范围是 1970-01-01 00:00:00 到 2038-01-19 3:14:07
TIMESTAMP和DATETIME的取值范围不同同时存储不同,TIMESTAMP占四个字节取值范围为 1970-01-01 00:00:00 到 2038-01-19 3:14:07那么为什么是这个取值范围呢 4个字节明显不够存储日期格式。4字节为2^32次方那么我们可以分析timestamp实际是C语言的一个INT 类型带符号位的。用ORACLE的格式算出来为SQL> select...
ERROR 1292 (22007): Truncated incorrect DOUBLE value 和ORA-01722: invalid number
其实这种错误和隐式转换有关MYSQL 错误模拟如下:myql> show variables like 'sql_mode%';+---------------+--------------------------------------------+| Variable_name | Value &nb...
mysql的auto_increment详解
转载http://blog.csdn.net/fwkjdaghappy1/article/details/7663331auto_increment的基本特性MySQL的中AUTO_INCREMENT类型的属性用于为一个表中记录自动生成ID功能,可在一定程度上代替Oracle,PostgreSQL等数据库中的sequence。在数据库应用,我们经常要用到唯一编号,以标识记录。在MySQ...
INNODB 页节点数据的存储方式、数据链、删除链的学习和实验总结
前文:关于MYSQL INNODB index page header学习和实验总结 http://blog.itpub.net/7728585/viewspace-2063921/关于INNODB SYSTEM RECORD infimum和supremum的学习和实验研究 http://blog.itpub.net/7728585/viewspace-2065464/所用到的工具是自己写的mysqlblock和bcview,我放到了百度云盘http://pan....
关于INNODB SYSTEM RECORD infimum和supremum的学习和实验研究
关于INNODB SYSTEM RECORD infimum和supremum的学习和实验研究接上一篇 http://blog.itpub.net/7728585/viewspace-2063921/关于MYSQL INNODB index page header学习和实验总结 接下来就是INDEX SYSTEM RECORDS,就是infimum和supremum如前面所介绍的,这两个系统记录是每个INNODB 块必须的,用来标示记录...
关于MYSQL INNODB index page header学习和实验总结
关于INNODB index header所用到的工具是自己写的,我放到了百度云盘http://pan.baidu.com/s/1num76RJ供大家下载和使用普通表空间(及设置了innodb_file_per_table每个表都对应一个idb文件)从第4个块开始通常是innodb的数据页。前38字节为FILE HEADER从38字节到74字节为INDEX HEADER,如下:number of dir...
INNODB 到底能存放多少数据?
一个INNODB SPACE 最大为64TB,但是为什么这样大呢?如果我们设置innodb_file_per_table后出现了多个SPACE 那么空间又是多大呢?先讨论一下INNODB 每个PAGE的 4-8字节为 block 的块号,我们查看一下:(工具为自己编写放到了云盘http://pan.baidu.com/s/1num76RJ)root@hadoop1 test]# bcview ibdata1 16 4 4|more***...
MYSQL Space id in fsp header,but in the page header错误
今天启动MYSQL的时候发现如下问题:2015-12-14 20:51:59 2098 [ERROR] InnoDB: Space id in fsp header 131225,but in the page header 652015-12-14 20:51:59 2098 [ERROR] InnoDB: inconsistent data in space header in tablespace ./test/oneblock.ibd (table test/oneblock)innodb的存储包含tablespace--segment...
关于LINUX僵尸进程的出现和原理
僵尸进程出现在父进程没有回收子进程的PCB的时候,这个时候子进程已经结束,但是父进程没有回收他,保存了一份子进程的PCB在父进程的内核空间中。僵尸进程占用的是一个PCB结构体的内存空间,所以占用量不会太大,但是过多的僵尸进程就会出现内存泄露,解决的办法就是给父进程发送一个终止的信号如 9) SIGKILL,2) SI...
将MYSQLDUMP全库备份分为单库文件的方法(自己写的小工具)
有时候我们备份是做的全库的备份,但是在恢复的时候却需要单库的文件,如果需要的库很小,我们把全库备份恢复回去然后导出想要的库的文件势必非常慢和耗时,这个时候如果能够拆分文件为单库就好了,所以做了如下一个工具工具叫做mysplit 可以查看备份出来每个库的大小和分割文件。下载百度云盘:http://pan.baidu.com...
OGG add trandata 到底做了什么
有的时候我们做OGG的时候add trandata会出现异常。这里就剖析一下add trandata到底做了什么GGSCI (yjfora81 as ggs_admin@testdb) 2> add trandata ppzhu1.test32016-03-08 11:47:36 WARNING OGG-00706 Failed to add supplemental log group on table PPZHU1.TEST3 due to ORA-00054: resource busy and ac...
关于CENTOS 运行时间异常到几百万的BUG
今天遇到这个BUG。现象就是没有任何日志,但是系统一直HANG着尝试使用远控卡RESET了很多次依然不能解决如下:[root@cqyjfora200 log]# toptop - 22:40:18 up 8 min, 2 users, load average: 0.67, 0.21, 0.06Tasks: 488 total, 1 running, 487 sleeping, 0 stopped, 0 zombieCpu(s...
小工具查看MYSQL数据文件块和类型
通过学习姜大师的INNODB 存储引擎,获得了块的格式的标识位,同时看到书上有他自己写的一个工具能够查看数据块的类型,那么既然知道了标识位,我使用C语言也写了一个功能类似的小工具,不要在生产环境,可用于学习和研究后期会加入更多想到的有用的功能。其实程序非常简单,我就在一个文件里面就完成了,因为不大所以没有...
关于MYSQL flush table的作用
关于MYSQL flush table的作用水平有限,还待学习。如有错误,请指正。先给出官方文档:? FLUSH TABLESCloses all open tables, forces all tables in use to be closed, and flushes the query cache. FLUSHTABLES also removes all query results from the query cache, like the RESET QUERY CACHEstatement.In...