自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(56)
  • 资源 (1)
  • 收藏
  • 关注

转载 mysql各模块之间的协作

double write 介绍 http://7567567.blog.51cto.com/706378/586059一、SQL在mysql中的运行过程关于一条sql的在mysql里的运行过程,我们知道,当客户端有一条sql请求时,这条sql连同客户端请求用户的信息会通过网络传输到服务器。进入服务器的用户管理模块。判断此用户是否存在且是否具有连接数据库的权限。如果连接成功,服务器给用户分配

2014-01-14 16:23:00 242

原创 MYSQL以‘test’开头的库在授权时都会被当成test库处理

MYSQL以‘test’开头的库在授权时都会被当成test库处理--------------------------------------------------------------------------------使用test登录-------------------------------------------------------mysql> select user();

2014-06-28 11:42:53 243

原创 存储过程--数据整合

BEGIN  DECLARE param_name VARCHAR(50) CHARACTER SET utf8 DEFAULT 'xx';           DECLARE param_day  INT DEFAULT 1;                                      -- 默认统计一天前的数据    DECLARE startTimePos,endT

2014-05-22 20:34:17 192

原创 mysql存储过程编写时碰到的问题

NO.1MYSQL 编写存储过程中,申明字符串变量,当将中文放入变量中时,报错。错误信息如下:Procedure execution failed1366 - Incorrect string value: '\xE8\xA9\xB9\xE5\x8D\x8E' for column 'param_name' at row 351改进方法:在申明字符变量时指定字符编码,即可解

2014-05-22 17:59:33 254

转载 mysql 5.6 新特性 主从延迟

mysql 5.6有个性特性,就是

2014-05-16 14:35:24 278

原创 innodb的行锁

大家都知道,innodb存储引擎的一个特性就是支持行锁,那么mysql innodb的行锁实现原理是怎么样的呢?innodb的行锁是通过给索引项加锁来实现的,所以如果sql语句中没有索引或有索引但是mysql在分析时发现全表扫描效果更好而没有使用索引,那么innodb依然会使用全表扫描。

2014-03-04 09:13:36 180

原创 mysql的索引

索引的结构:   http://www.itpub.net/thread-1296141-1-1.html 点击打开链接索引的选择原则    http://www.it165.net/database/html/201208/2891.html点击打开链接聚集索引好处缺点应用非聚集索引好处缺点应用索引在

2014-02-19 10:22:42 152

转载 SQL(1)

1.like的用法  在搜索字符型字段时,我们有时会使用 LIKE 关键字和通配符,这种做法虽然简单,但却也是以牺牲系统性能为代价的。例如下面的查询将会比较表中的每一条记录。  SELECT * FROM books  WHERE name like "MySQL%"  但是如果换用下面的查询,返回的结果一样,但速度就要快上很多:  SELECT * FROM bo

2014-02-11 09:11:30 160

原创 linux中几个使用的命令

1.find命令  参阅  http://linux.chinaunix.net/techdoc/system/2008/07/25/1020339.shtml -mtime +30 (+表示n天之前 -表示n天之内)-newer file1 !file2 查找比file1新,比file2旧的文档     -exec:对匹配的文档执行所给的shell命令。形式为:command { }

2014-02-10 15:04:32 133

原创 乱码

1.linux中显示的中文文件内容乱码修改/etc/sysconfig/i18n添加:LANG="zh_CN.UTF-8"     参阅 http://linux.chinaunix.net/techdoc/system/2009/07/21/1125249.shtml2.windows下的中文文档上传到linux环境中,乱码1.修改lwindows下的文档编码,设置为utf8。

2014-02-10 13:55:27 137

原创 shell编写常犯的错误

编写shell脚本时,经常重复碰到问题:1 . 双引号内加双引号echo "hello,"\"halo\"""2.字符串非空判断if [  -n "$i" ];then  注意单引号和空格3.shell中使用正则表达式直接使用grep -E ‘正则表达式’(单引号)

2014-02-08 11:52:05 109

原创 复杂条件查询,更新

查询 在日常工作中,经常碰到需要提取特定数据的情况,常常需要用到多表连接查询,条件分组group by,排序等。常用的几种连接方式有左连接,右连接,内连接。在mysql中没有outer join,可以通过union两张表来实现outer join的功能。left join以左边的表为准,right join以右边的表为准,join(inner join)已两张表的交集为准。两张表多条件连接的时

2014-01-23 16:42:01 164

原创 innodb 如何使用全文索引

1.首先,使用的mysqld的innodb必须支持全文索引2.然后:drop table if exists product4;CREATE TABLE `product4` (`id`  int NOT NULL primary key AUTO_INCREMENT, `a` varchar(4000) DEFAULT NULL, `b` varchar(4000

2014-01-23 16:24:47 345

原创 如何往zabbix中添加自定义监控项

使用zabbix时,需要根据自身机器的需要,添加自定义监控项。下面介绍两种自定义监控项的例子:在主机层面添加自定义监控项:1.  组态》主机》目标主机》项目》添加监控项2.修改对应主机上的配置文件10.200.31.1:/usr/local/zabbix/conf/zabbix_agentd.conf,添加如下内容  添加完成后,保存,重启zabbix agent

2014-01-22 15:35:45 412

原创 如何禁用swap

由于磁盘读写频繁,经常要cache文件,导致系统使用了swap分区。数据库服务器经常使用swap分区是一个不好的现象,所以需要禁用swap分区,禁用方法如下:more /etc/sysctl.conf在/etc/sysctl.conf末尾添加vm.swappiness=0使配置生效:sysctl -p对于已经cache的内存,如需要,可对cache进行清理

2014-01-22 09:20:24 412

原创 mysql集群主主架构

mysql搭建 主主架构的时候,除了在搭建主从时需要注意的几点外,还需要设置: auto-increment-increment = 2   //每次增长2  auto-increment-offset = 1  //设置自动增长的字段的偏移量,即初始值为2用来避免主键重复

2014-01-16 17:06:52 198

原创 如何解析行格式保存的二进制日志

在主从架构时,如果使用行格式来记录日志文件,就会出现直接使用mysqlbinlog工具并不能直接看到日志内容。这时需要对日志文件进行解析:/usr/local/mysql/bin/mysqlbinlog --no-defaults  -v -v --base64-output=DECODE-ROWS --start-datetime='2014-01-08 00:00:00' -d bbg m

2014-01-15 19:23:58 146

原创 如何在不影响生产的情况下进行全量备份-xtrabackup

使用mysqldump备份的好处是,对数据库里的记录都是使用sql语言进行的逻辑备份,这样备份的数据文件,可以实现跨平台跨库迁移数据。但是这样的备份方式并不适合大数据量的数据库备份,因为这样的备份方式会导致长时间的锁表,而因为sql文件较大,会造成非常大的磁盘读写,同时由于备份时间长,不能精准地记录备份的时间点。这时,使用xtrabackup工具就能避免上述备份产生的问题。xtrabackup

2014-01-15 12:21:37 197

原创 shell中单双引号的嵌套使用

在shell中,经常会碰到这样的问题,单引号里面需要嵌套双引号,双引号里面又需要嵌套双引号。这时,单纯地插入单双引号就会报错。下面是单双引号嵌套的例子:echo "          knife exec -E '          client_desc = {          "\"name\"" => "\"$n_host\"",           "\"admin\

2014-01-14 17:04:25 537

原创 mysql优化目标

系统层面: 减少 IO 次数 IO永远是数据库最容易瓶颈的地方,这是由数据库的职责所决定的,大部分数据库操作中超过90%的时间都是 IO 操作所占用的,减少 IO 次数是 SQL 优化中需要第一优先考虑,当然,也是收效最明显的优化手段。 降低 CPU 计算,充分利用cpu 除了 IO 瓶颈之外,SQL优化中需要考虑的就是 CPU 运算量的优化了。order by, group by

2014-01-14 16:58:02 172

原创 auto_increment

auto_increment自动增长列必须是索引,如果是组合索引,innodb必须是组合索引的第一列,而myisam可以是组合索引的其它列,自动增长列是按照前面几列进行排序后递增的1 用法:CREATE TABLE test(id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,username VARCHAR(15) NO

2014-01-14 16:20:40 249

原创 mysql强制使用物理内存

memlock and large_pages说使用 memlock 可以让 MySQL 不使用 swap 交换分区,强制使用物理内存这次启动mysql时碰到两个问题,记录下来。当时为了提升mysql的性能,增加了memlock和large_pages参数,于是产生下面两种现象:1.MySQL只能以mysql启动,以root用户起动,就会产生segmentation fault

2014-01-14 16:19:30 196

原创 表结构优化

1.表结构优化1适当拆分对于开发人员,可能希望将一个完整的对象对应于一张数据库表,但是有些时候会在性能上带来较大的问题。当我们表中存在类似于text或者是很大的varchar类型的大字段的时候,如果我们大部分访问这张表的时候都不要这个字段,就该将其拆分到另外的独立表中。2适度冗余被频繁引用且只能通过join 2张(或者更多)大表的方式才能得到的独立小字段适度冗余的同时需要确保数

2014-01-14 16:17:55 206

原创 如何定位mysql性能问题

1.首先利用系统工具,定位问题[   top | nmon | dstat -dcnml | orzdba    ]:top命令查看各个进程的资源占用情况,各个指标依次解读如下【top f|1 --help】 :第一行:当前系统时间,系统运行时长,当前登录用户数,系统负载(任务队列的平均长度,三个数值分别为1,5,15分钟)【系统负载不要超过cpu的核数】第二行:进程总数,正在运行

2014-01-14 15:59:20 436

原创 delete与truncate的区别

表现:删除数据时该选择delete还是truncate来删除数据?解决方法:delete(不带where条件)和truncate都可以删除表中的数据,但是truncate很快而delete却很慢。truncate 之后的自增字段从头开始计数,而delete的仍然保留了原来的最大值。delete每次删除一行,并在事务日志中为所删除的每行记录一项,truncate table通过释放存储数据所用的

2014-01-14 14:34:01 120

原创 mysql日常运维(2)

问题一:1.cannot load from mysql.proc表现:从mysql5.1中导出全库导入到mysql5.5中,报ERROR 1548 (HY000): Cannot load from mysql.proc. The table is probably corrupted解决方法:mysql5.5和mysql5.1的mysql.proc表时有区别的,修改表结构:ALTE

2014-01-14 14:31:59 304

原创 LOAD DATA导入导出指定列数据

导出数据:select * from tbl_frn_asp_avb where asp_time >"2013-06-1 00:00:00" and asp_time导入数据:load data local infile '/mysqlbak/tbl_asp_avb130512-0613.txt' into table tbl_frn_asp_avb fields termina

2014-01-14 11:42:21 209

原创 mysqldump如何快速导入数据

快速批量导入数据1.成批装载较单行装载更快,因为在装载每个记录后,不需要刷新索引高速缓存;可在成批记录装入后才刷新2.在表无索引时装载比索引后装载更快。如果有索引,不仅必须增加记录到数据文件,而且还要修改每个索引以反映增加了的新记录3.较短的sql语句比较长的sql语句要快,因为它们涉及服务器方的分析较少,而且还因为将它们通过网络从客户机发送到服务器更快。  可根据以上原理推导

2014-01-14 11:17:40 578

原创 mysql 备份问题

在进行数据备份、恢复时,碰到的问题罗列如下:问题一:1.数据迁移异常,ubuntu下迁移完数据目录,数据库不能启动数据库默认使用mysql用户来启动数据库,请检查新迁移的数据目录,mysql对其是否具有读写权限。如果没有,请授予其读写权限。如果是在ubuntu环境中使用apt-get命令安装的数据库,修要修改/etc/apparmor.d/usr.sbin.mysqld的内容,添加新增目录

2014-01-14 10:54:44 517

原创 mysql主从常见异常问题解决

1.问题一:主从复制,中继日志不断增长,如何设置中继日志自动清除vi 配置文件my.cnf,在mysqld下增添   relay_log_purge=1 (自动清除中继日志打开)        重启mysql,这样SQL Thread每执行完一个events时才会判断该relay-log是否需要,已经不再需要则自动删除2.问题二:主从同步失败,如何快速同步?跳过错误,继

2014-01-14 10:15:55 1418

原创 清空具有外键约束的表时报ERROR 1701 (42000):

ERROR 1701 (42000): Cannot truncate a table referenced in a foreign key constraint (`furion`.`tbl_frn_alert`, CONSTRAINT `FK353A3CBEB139CC08` FOREIGN KEY (`endpt_id`) REFERENCES `furion`.`tbl_frn_endp

2013-02-01 17:54:06 894

原创 mysql5.1与mysql5.5共同使用的问题

由于mysql多版本的并存,由此会导致多个版本共同使用时,出现问题。       在主从架构中,主的版本不能高于从的版本。高版本能够兼容低版本的特性,而低版本却未能够兼容高版本的特性。       如果要将高版本的数据导入到低版本的数据库时也可能会出现导入不成功的问题。

2013-01-21 13:59:59 139

原创 mysql修改字符集

修改my.cnf[client]default_character_set=utf8[mysqld]character_set_server=utf8对于my.cnf的配置参数的格式经常会让人混淆,一般情况下参数中的“-”和“_”都是可以的,但是有些版本服务器参数会出现"-"可以而“_”就会报错,例如: default-character-set default-s

2013-01-09 10:34:34 182

原创 本地服务器连接时找不到sock文件?

mysql的连接方式有两种:sock连接和tcp/ip连接,如果使用skip-networking或者bind-address就只能使用sock连接-h localhost使用sock连接 而127.0.0.1或者其它都会使用tcp/ip连接    直接使用mysql –socket=接 sock文件位置 或 mysql –S sock文件位置或者编辑~/.my.cnf文件指定sock文件

2013-01-09 10:27:14 180

原创 使用/etc/init.d/mysql启动脚本,提示:the server quit without updating PID file?

出现这个问题,十有八九是my.cnf里面的参数名或参数配置有误。比如:1.参数名写错了,character_set_server写成了character-set-server            2.参数值设置不合理.注意on和1的区别,以及参数值的大小与机器性能本身的限制。

2013-01-09 10:25:35 260

原创 关于mysql安装时,报error 13错误

在公司自己开发的系统上安装mysql,明明正确的安装方式,却总是在新机器上报错。          从报错信息上来看,报错的原因是和权限有关。使用数据库初始化脚本的使用,使用root权限去执行的,实在是不明白到底有什么文件是连root都没有权限去访问的。报错信息上说,是不能再/tmp目录下建立xxxx(乱码)文件,但手动可以在下面创建。         百般无奈之下,投靠了大侠,大侠居然连

2013-01-08 10:46:50 284

转载 ubuntu系统修改时间

http://blog.chinaunix.net/uid-26495963-id-3048079.html首先,可以直接利用date命令来显示当前的系统时间# dateMon Dec 22 22:35:58 IST 2008如果你想把系统时间改为2008年圣诞节的下午一点四十五的话,你可以利用下面的命令:# date -s “25 DEC 2008 13:45:0

2013-01-07 14:40:33 463

原创 mysqldump: Got error: 1449 及[Warning] IP address could not be resolved

想换一个版本的mysql,把原有数据库里面的数据备份。        mysqldump -uxxx -pxxx -A>mysql0106.bak       mysqldump: Got error: 1449: The user specified as a definer (‘wj’@'%’) does not exist when using LOCK TABLES

2013-01-06 16:12:08 290

原创 如何安装innosql

话说,网易开发出了自己的mysql版本,名曰:innosql。想研究下innosql的性能。但是在网上提供的www.innomysql.org链接并不能打开(具体原因不明)。于是在https://github.com/NetEase/InnoSQL/wiki/Virtual-Sync-Replication-with-Group-Commit上下载patch包给mysql打补丁。

2013-01-05 16:57:23 462 1

转载 MySQL/InnoDB和Group Commit(2)

http://www.orczhou.com/index.php/2011/12/time-to-group-commit-2/今天发现Percona Release的Percona-Server-5-5-18-23-0已经完成了Group Commit工作,而且是用最优雅的方式(移植了MariaDB的实现,而不是workaround),心里难掩激动。这篇文章接前篇继续介绍一下问题的背景:

2012-12-26 15:10:47 189

汇编语言 王爽编著 简单实用

汇编语言 王爽 电子版本的书籍 内容详实 简单易懂

2011-03-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除