mysql 有关的文件
摘要:1、在linux上安装好mysql之后,存在很多mysql有关的文件。2、/etc/rc.d/init.d/mysql 是mysql服务的启动脚本,是对mysqld_safe的封装,mysqld_safe是一个脚本,是对可执行文件mysqld的封装3、/usr/bin/mysql 是mysql客户端...
阅读全文
posted @
2015-04-26 17:32
Andy Niu
阅读(254)
推荐(0) 编辑
Linux 搜索文件
摘要:1、whereis 只能查找可执行文件,联机帮助文档,源代码文件。在数据库/var/lib/mlocate/mlocate.db查找,因此效率很高。但是数据库mlocate.db不是实时更新的,而是一天更新一次(crontab定时执行updatedb),因此whereis查找会不准确。要想准确,需要...
阅读全文
posted @
2015-04-26 16:26
Andy Niu
阅读(257)
推荐(0) 编辑
linux cp覆盖每次都有提示
摘要:1、cp命令,目标已经存在,每次都提示是否覆盖,怎么办?2、cp --help 可以看到选项-i的时候,才会提示,但是这里并没有-i,为什么每次都有提示?3、原因是:这里执行的cp是一个别名,通过alias 命令可以看到 alias cp='cp -i'4、怎么解决这个问题? a、使用原始的...
阅读全文
posted @
2015-04-26 14:58
Andy Niu
阅读(2540)
推荐(0) 编辑
otl插入数据不成功
摘要:原因是:void rlogon(...); 没有设置auto_commit为1,otl不会自动提交。注意:static int otl_initialize (const int threaded_mode=0); 0是单线程,1是多线程。但是otl不是线程安全的,需要自己管理。
阅读全文
posted @
2015-04-26 13:55
Andy Niu
阅读(217)
推荐(0) 编辑
mysql5.1版本 my.cnf中复制的配置不起作用
摘要:原因是:在mysql存放数据的目录下面有一个文件master.info,mysql服务器认为 master.info比my.cnf优先级要高,第一次启动slave,master.info不存在,从my.cnf读取选项值,保存到master.info,以后再启动slave,会直接从master.inf...
阅读全文
posted @
2015-04-26 13:54
Andy Niu
阅读(1077)
推荐(0) 编辑
mysql /*! 50100 ... */ 条件编译
摘要:1、/*...*/ 是注释,mysql不会执行。2、mysql对标准sql进行了扩展,包含了一些自己的特性。3、/*!...*/ 是一种特殊的注释,其他的数据库产品当然不会执行。mysql特殊处理,会选择性的执行。可以认为是:预编译中的条件编译。4、特别注意 50100,它表示5.01.00 版本或...
阅读全文
posted @
2015-04-26 13:53
Andy Niu
阅读(2759)
推荐(2) 编辑
linux 硬连接与软连接
摘要:1、linux中文件占用一个inode,inode指向文件内容。2、文件名可以认为是一个指针,指向inode。硬连接相当于指针的整体拷贝,并不是对文件内容的拷贝。两个文件名(两个指针)都能修改文件,删除一个不影响另外一个,如下: [root@localhost home]# touch aaa [r...
阅读全文
posted @
2015-04-19 23:24
Andy Niu
阅读(172)
推荐(0) 编辑
Linux 数据流重定向
摘要:1、标准输出:代码是1,使用>和>>,前者是覆盖,后者是追加。 xxx > aaa.txt xxx >> aaa.txt2、对于错误的数据,需要使用标准错误输出,标准错误输出:代码是2,使用2>和2>>3、正常信息和错误信息输出到不同的文件,如下: xxx >info.txt 2>er...
阅读全文
posted @
2015-04-19 22:51
Andy Niu
阅读(474)
推荐(0) 编辑
倒排索引
摘要:1、数据库中的索引是对字段的内容操作,可以认为是对字段取值建一个排序结构,这样在查找的时候就不用遍历查找了。2、考虑现实当中的一种需求,对于某个关键字我想知道在哪个文档出现,上面的索引技术不能解决这个问题。怎么办?3、这要使用倒排索引,对每个关键字建立一个索引,标示在哪个文档里出现。比如:中国 对应...
阅读全文
posted @
2015-04-19 21:44
Andy Niu
阅读(200)
推荐(0) 编辑
sed 常用的功能
摘要:1、每行后面加入一个空行 sed 'G' num.txt,保留空间(Hold Space)的内容默认值是一个空行。2、每行前面加入一个空行 sed '{x;p;x}' num.txt,交换模式空间和保留空间,打印模式空间,为空行,再交换回来,读取下一行之前,把模式空间的内容打印出来。...
阅读全文
posted @
2015-04-19 13:23
Andy Niu
阅读(826)
推荐(0) 编辑
linux mysql安装
摘要:1、首先检查是否安装了mysql,rpm -qa|grep -i mysql2、如果已经安装了,先卸载掉老的,rpm -e --nodeps 3、安装,有三个安装包如下: MySQL-server-5.6.15-1.linux_glibc2.5.i386.rpm mysql服务 M...
阅读全文
posted @
2015-04-19 12:47
Andy Niu
阅读(233)
推荐(0) 编辑
mysql help
摘要:1、一般情况,不知道命令的使用方法,有三种办法: a、 --help 是命令的一个选项,介绍命令的使用方法。mysql --help 或者mysql -? b、 man 对命令的详细解释,man mysql c、 info 包含更完整的信息。2、mysql 客户端登录之后,还...
阅读全文
posted @
2015-04-19 12:21
Andy Niu
阅读(1341)
推荐(0) 编辑
linux 命令行选项
摘要:命令行选项风格1、原始unix风格 a、命令行选项以连字符'-'开头,后跟单个字符表示选项,选项后面跟着取值,如:mysql -hlocalhost b、选项不带取值的,可以组合在一起,如:sed -n -r 可以写成 sed -nr c、偏爱小写字母,大写字母另有含义,非常简练2、GNU风格...
阅读全文
posted @
2015-04-19 11:14
Andy Niu
阅读(4940)
推荐(1) 编辑
mysql 主主复制的配置流程
摘要:1、先关闭B,把A的数据导出来,mysqldump -hlocalhost -uroot -p123456 --database ibprpu >ibprpu.sql2、关闭A,启动B,进入mysql建立一个新的数据库 create database ibprpu3、导入数据库 mysql -hlo...
阅读全文
posted @
2015-04-19 09:18
Andy Niu
阅读(304)
推荐(0) 编辑
分布式系统权限校验
摘要:1、场景:有一个中心服务器cmu,多种业务服务器(比如dmu,vtdu),每种业务服务器有一组服务,这种服务一主多从,具备主从切换和负载均衡的功能。客户端首先去连接中心服务器,需要鉴权,客户端sdk负责去连接业务服务器。连接业务服务器都能连接成功。那么问题来了。2、恶意软件绕过cmu,直接去连接dm...
阅读全文
posted @
2015-04-19 09:17
Andy Niu
阅读(1279)
推荐(0) 编辑
理解odbc
摘要:1、解决什么样的问题?不同的数据库产品,具有不同的特性,也就是方言。因此应用程序针对不同的数据库产品,编写不同的代码。如果换了一个数据库产品,还需要重新编写数据库交互部分,不具备扩展和移植。odbc对数据库进行了封装,对应用程序提供一致的接口。2、odbc(Open DataBase Connect...
阅读全文
posted @
2015-04-19 09:16
Andy Niu
阅读(902)
推荐(0) 编辑
cpu访址能力和内存
摘要:这里有两个概念:cpu访址能力和提供的内存。举例来说,有个灯泡,可以照亮100立方米的空间,只有照亮的空间才可以工作。假如现在的空间只有50立方米,只要增加空间,可工作的空间就增加了。如果当前已经是100立方米的空间,再增加空间也没用,因为灯泡照不到,可工作的空间还是100立方米。1、32位系统,能...
阅读全文
posted @
2015-04-12 20:39
Andy Niu
阅读(278)
推荐(0) 编辑
sed 常用的命令
摘要:n: 读取一行,执行n,把当前行打印到标准输出,再读取一行,覆盖当前行,然后对模式空间执行一组模式/行为。N:读取一行,执行N,再读取一行,现在模式空间有两行内容,执行一组模式/行为。如下:[root@localhost ~]# sed 'n;p;' num.txt num1num2num2num3...
阅读全文
posted @
2015-04-12 20:01
Andy Niu
阅读(286)
推荐(0) 编辑
sed命令
摘要:1、sed一次读取一行数据,把读取的数据拷贝到模式空间,在模式空间(pattern space )内处理数据,然后读入下一行数据,直到结束。2、sed并不是直接处理原数据,而是对原数据的副本进行处理,因此没有改变原数据。如果想直接改变原数据,使用 -i cfg.cnf3、默认情况下,sed对每一行都...
阅读全文
posted @
2015-04-12 19:22
Andy Niu
阅读(709)
推荐(0) 编辑
删除相邻重复的行
摘要:notepad++ 删除相邻重复的行查找 (.+?)(\r\n)\1 替换为 \1sed 删除重复行sed -nr '1h;1!H;${x;s/(.+)(\n)\1/\1/g;p}' num.txt-n 安静模式,sed 读取下一行之前,都会把模式空间的内容,打印到标准输出,-n取消这种打印。-r ...
阅读全文
posted @
2015-04-12 19:21
Andy Niu
阅读(1351)
推荐(0) 编辑
删除相邻重复的内容
摘要:1、思路:用正则表达式匹配,使用反向引用,替换。查找(.+?)\1 替换为 $1 (.+)\1 为什么不好?因为量词优先,+会尽可能地吃,然后又要一个一个吐出来,效率太差,使用(.+?)\1 取消量词优先,尽量少吃。 (.*?)\1 为什么不好,因为.* 可以匹配没有字符的情况,.+ 要求至少有一个...
阅读全文
posted @
2015-04-12 19:20
Andy Niu
阅读(367)
推荐(0) 编辑
动态库的加载
摘要:1、程序运行,要把需要的共享动态库装入内存。2、在内存中,每个进程都有一份专属自己的数据,共享动态库中的代码段是共享的,只有一份,这样不会有问题吗?3、因为代码段是只读的,多个人读,没有问题。去写代码段,程序要崩溃。4、即使是数据段,为了效率,也是采用COW(Copy-On-Write),写时拷贝,...
阅读全文
posted @
2015-04-12 19:18
Andy Niu
阅读(289)
推荐(0) 编辑
正则表达式 环视
摘要:1、环视就是看周围的意思。环视匹配一个位置,这个位置的周围满足一些条件。也就是这个位置的前后,包含某些内容,后者不包含某些内容。2、对于12345678,修改为 12,345,678。这个需求要做的事情就是在数字中的一些位置添加逗号,这个位置的特点是:从最右边的一个数字开始,三个数字倍数的位置添加一...
阅读全文
posted @
2015-04-12 17:59
Andy Niu
阅读(420)
推荐(0) 编辑
正则表达式 平衡法则
摘要:1、只匹配期望的文本,排除不期望的文本。2、易于控制和理解。3、使用NFA,注意效率问题。能够匹配,尽快匹配并返回。不能匹配,尽快报告匹配失败。
阅读全文
posted @
2015-04-12 17:39
Andy Niu
阅读(321)
推荐(0) 编辑
高效正则表达式 匹配优先与忽略优先?
摘要:考虑 ^.*: 与^.*?: 的区别:1、前者从行头匹配到最后一个: 后者从行头匹配到第一个:2、注意:假设一行中有多个冒号,前者只能匹配一个,后者可以匹配多个。如果确定一行中最多只有一个冒号,使用二者是等价的。这里存在效率问题。3、如果冒号靠近行的开头,使用后者,少吃就能匹配成功,如果使用前者,情...
阅读全文
posted @
2015-04-12 17:34
Andy Niu
阅读(1134)
推荐(0) 编辑
匹配优先存在的问题,以及解决办法
摘要:1、匹配优先存在的问题,考虑下面的情况: The name "dumpling" is said "jiaozi" in Chenese. 我们想要匹配 双引号引起来的单词,这里也就是 dumpling和jiaozi。 使用 ".*" ,出现什么问题? "匹配第一个双引号,.* 量词优先匹配,一直...
阅读全文
posted @
2015-04-12 17:20
Andy Niu
阅读(397)
推荐(0) 编辑
回溯
摘要:1、NFA引擎最重要的性质是:遇到两个匹配成功的情况,选择其中的一个,同时记住另一个,作为备选状态。2、需要做出选择的情况有:量词和多选结构。量词是匹配优先的,而多选结构往往是按顺序选择的。3、选择一条支路,全局匹配成功,匹配结束。如果失败,后退一步,选择另一条支路,后退只是后退一步,符合后进先出。...
阅读全文
posted @
2015-04-12 16:39
Andy Niu
阅读(183)
推荐(0) 编辑
Linux 启动流程
摘要:1、首先加载BIOS(Basic Input Output System),自检,读取可启动的设备顺序(一般是硬盘)。2、每个硬盘有一个MBR(Master Boot Record)区域,MBR是硬盘第一个扇区446B的区域。设置启动顺序,相当于读取不同硬盘的MBR。3、然后加载MBR。4、每个操作...
阅读全文
posted @
2015-04-05 13:06
Andy Niu
阅读(326)
推荐(0) 编辑
tasklist、taskkill、taskmgr
摘要:1、tasklist 列出所有的进程,使用tasklist |findstr xxx , 选取进程2、taskkill 杀掉进程,使用 taskkill /f /pid 12353、taskmgr 调出任务管理器
阅读全文
posted @
2015-04-04 11:19
Andy Niu
阅读(290)
推荐(0) 编辑
Mysql分区表
摘要:mysql> create table stu(Id int(9) not null auto_increment, Name varchar(100) not null default '',Time datetime default null,primary key (Id,Time)) par...
阅读全文
posted @
2015-04-04 11:15
Andy Niu
阅读(252)
推荐(0) 编辑
Linux ${} 变量内容的提取和替换功能等
摘要:[root@localhost log]# var=/dir1/dir2/file.txt1、对变量取值[root@localhost log]# echo ${var}/dir1/dir2/file.txt2、求字符串的长度[root@localhost log]# echo ${#var}193...
阅读全文
posted @
2015-04-04 11:14
Andy Niu
阅读(4947)
推荐(1) 编辑
Linux shell 提取文件名和目录名
摘要:${}用于字符串的读取,提取和替换功能,可以使用${} 提取字符串1、提取文件名[root@localhost log]# var=/dir1/dir2/file.txt[root@localhost log]# echo ${var##*/}file.txt2、提取后缀[root@localhos...
阅读全文
posted @
2015-04-04 11:12
Andy Niu
阅读(63622)
推荐(3) 编辑
Mysql计划任务
摘要:1、检查计划任务是否开启mysql> set global event_scheduler=off;Query OK, 0 rows affectedmysql> select @@event_scheduler;+-------------------+| @@event_scheduler |+...
阅读全文
posted @
2015-04-04 11:10
Andy Niu
阅读(2663)
推荐(0) 编辑
量词 匹配优先与忽略优先
摘要:正则表达式,量词是匹配优先的,也就是说,量词会尽量地吃,直到由于吃得太多,导致后面没法匹配,才吐出来一个。举例来说,文本ab1cd2,正则表达式 .*[0-9]匹配过程:*一直吃到2,发现坏了,数字没法匹配了,于是突出2,匹配成功,结束。也就是说.*匹配了ab1cd如果我想让.*[0-9]匹配ab1...
阅读全文
posted @
2015-04-04 11:09
Andy Niu
阅读(1128)
推荐(0) 编辑
show slave status
摘要:Slave_IO_State: Waiting for master to send event Master_Host: 10.1.1.1 Master_User: rep_user Master_Port: 3306 Connect_...
阅读全文
posted @
2015-04-04 11:08
Andy Niu
阅读(651)
推荐(0) 编辑
理解 select poll epoll
摘要:举例说明:老师收学生作业,相当于应用层调用I/O操作。1、老师逐个收学生作业,学生没有做完,只能阻塞等待,收了之后,再去收下一个学生的作业。这显然存在性能问题。2、怎么解决上面的问题?老师找个班长,班长负责收作业,班长的做法是:遍历问学生作业写好了吗,写好的,收起来交给老师。休息一会,再去遍历。。。...
阅读全文
posted @
2015-04-04 11:07
Andy Niu
阅读(396)
推荐(0) 编辑
Mysql ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA
摘要:ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* w...
阅读全文
posted @
2015-04-04 11:06
Andy Niu
阅读(2980)
推荐(0) 编辑
使用notepad++进行替换
摘要:将aaabbbccc转化为#define AAA aaa#define BBB bbb#define CCC ccc查找(.*),替换为#define $1 "$1"#define aaa "aaa"#define bbb "bbb"#define ccc "ccc"列表式,按住Alt,选择中间的,...
阅读全文
posted @
2015-04-04 11:05
Andy Niu
阅读(1538)
推荐(0) 编辑
notepad++列模式
摘要:考虑下面的情况:已有AAABBBCCC和aaabbbccc想合并为AAA aaaBBB bbbCCC ccc在大写后面,列模式,复制小写,粘贴,结果不是如下:AAA aaaBBB bbbCCC ccc而是AAA aaabbbcccBBB aaabbbcccCCC aaabbbccc为什么?这种情况,...
阅读全文
posted @
2015-04-04 11:04
Andy Niu
阅读(1795)
推荐(0) 编辑
浮点数精度
摘要:1、为什么叫浮点数? 相对于浮点数,就是固点数,小数点固定在最右边,也就是整数。浮点数的小数点,根据指数的取值,左右移动。2、考虑二进制整数,假设只有2个bit,可以表示00,01,10,11,共四个整数,表示范围是[0,3],可以表示这个范围内的所有整数。3、考虑二进制小数,假设只有2个bit,可...
阅读全文
posted @
2015-04-04 10:34
Andy Niu
阅读(800)
推荐(0) 编辑
Vim的使用 区域选择
摘要:1、Visual Block 区域选择,这里的Visual表示视觉,图像,可视化。2、 小写v:字符选择 shift+v(大写V):行选择 ctrl+v:矩形选择 从上到下,选择的区域越来越大。三个模式之间可以任意切换,重复命令就是退出。3、Vim包括一般模式,插入模式,命令模式...
阅读全文
posted @
2015-04-04 10:32
Andy Niu
阅读(7199)
推荐(0) 编辑
linux top
摘要:top列出进程使用资源的情况,1、VIRT:这个表示进程需要的内存,而不是实际使用量。2、RES: 实际使用量,包括共享的内存3、SHR: 共享的内存。因此,一个进程自己独占的物理内存为 RES-SHR
阅读全文
posted @
2015-04-04 10:26
Andy Niu
阅读(193)
推荐(0) 编辑
虚拟内存
摘要:1、虚拟内存解决什么问题?2、程序必须运行在物理内存上。每个程序运行需要一些内存,在32位机上,程序可以使用的内存为4G,实际需要的内存没有这么多。在32位机上,可使用的物理内存为4G,操作系统使用1个多G,留给应用程序的只有2G多。要运行很多应用程序,显然不够。怎么办?3、操作系统提供一层封装,当...
阅读全文
posted @
2015-04-04 10:18
Andy Niu
阅读(261)
推荐(0) 编辑
strcpy与strncpy
摘要:char aa[]="123456789123456789123456789";char bb[4]={0};1、strcpy(bb,aa); bb的空间,不能存下aa的内容,导致踩到aa的内存。如何解决这个问题?2、使用strncpy,如下: strncpy(bb,aa,sizeof(bb)); ...
阅读全文
posted @
2015-04-04 10:00
Andy Niu
阅读(358)
推荐(0) 编辑
C++ 踩内存
摘要:1、从上往下,栈在堆上面(记忆方法:站在堆上面),二者向里压缩,也就是说,栈地址减少,堆地址增加。栈顶是小地址。2、模拟踩内存,让程序崩溃。代码如下:int main(int argc, char* argv[]){ int a = 263; int* pa = &a; char tmp[4]="a...
阅读全文
posted @
2015-04-03 23:59
Andy Niu
阅读(1745)
推荐(0) 编辑
大端和小端
摘要:1、大端小端容易迷惑,记忆方法:地址从左向右是增加,我们平时的计数方式是大端。 而我们平时的计数,从左向右是高位到低位,是减少,也就是说,大端相反。2、字节是计算机存储的最小单元,字节本身可以认为是大端,因为19,表示为13。多字节表示一般是小端,比如:275,表示为13 01。前面的13对应19,...
阅读全文
posted @
2015-04-03 23:03
Andy Niu
阅读(290)
推荐(0) 编辑
栈上数组,做了什么事?
摘要:考虑 char tmp[7] = "abcd"; 做了什么事?1、按道理,堆栈指针需要在栈顶挪出7个字节,但是为了字节对齐,栈顶指针会挪出8个字节,最高地址的一个字节不使用,是cc,注意:栈的使用,地址是减小的。2、tmp就是栈顶指针的别名,是个常量,不能修改指向。3、从栈顶向高地址拷贝a,b,c,...
阅读全文
posted @
2015-04-03 23:00
Andy Niu
阅读(1092)
推荐(0) 编辑