您现在的位置:首页
--> MySQL
在MySQL里添加一个system、status variables的比较复杂的,需要修改sql/sql_show.cc,sql/mysqld.cc, 还要修改sql/sql_yacc.yy,然后重新编译等等,前面的文章可见其复杂度,很容易出错。 daemon plugin 除了允许添加后台线程,也允许添加status,且不需要修改mysqld的代码。
写在前面的话 在编程领域有一句人尽皆知的法则“程序 = 数据结构 + 算法”,我个人是不太赞同这句话(因为我觉得程序不仅仅是数据结构加算法),但是在日常的学习和工作中我确认深深感受到数据结构和算法的重要性,很多东西,如果你愿意稍稍往深处挖一点,那么扑面而来的一定是各种数据结构和算法知识。例如几乎每个程序员都要打交道的数据库,如果仅仅是用来存个数据、建建表、建建索引、做做增删改查,那么也许觉得数据结构和这东...
show processlist是诊断MySQL常用的命令,它会列出THD对象里所有的线程当前状况。 下面将为show processlist添加一个新的列,表示当前连接查询之后返回的行数,字段名为my_row_count。 当你要修改一个命令的时候,最好从sql/sql_yacc.yy出发,根据命令的关键字语法匹配到后续的动作。打开sql/sql_yacc.yy后搜索关键字show:,就找到了所有show命令的语法规则。
之前没经历过漫长的crash recovery恢复过程,一是本身库中的数据量就不大,平时的业务量就不是很高,二是innodb_buffer_pool_size和innodb_log_file_size的大小平时设置的也不大。所以,对于意外导致innodb自动恢复时,经历的等待时间的长短没有什么深刻的体会。在浏览peter很早以前的文章时,看到当时大家是多么的无奈和痛苦,同时,在InnoDB没有对其作出改进之前,大家都在开动脑筋,配合各种参数尽可能的缩短故障恢复的时间。先...
最近一段时间,我们整理了一些关于Percona,Linux,Flashcache,硬件设备的优化经验,分享给大家:硬件 1.开启BBWC RAID卡都有写cache(Battery Backed Write Cache),写cache对IO性能的提升非常明显,因为掉电会丢失数据,所以必须由电池提供支持。电池会定期充放电,一般为90天左右,当发现电量低于某个阀值时,会将写cache策略从writeback置为writethrough,相当于写cache会失效,这时如果系统有大量的IO操作,可能会明显感觉到...
• Mysql 安全
MySQL 是一个真正的多用户、多线程SQL数据库服务器,它是一个客户机/服务器结构的实现。MySQL是现在流行的关系数据库中其中的一种,相比其它的数据库管理系统(DBMS)来说,MySQL具有小巧、功能齐全、查询迅捷等优点。MySQL 主要目标是快速、健壮和易用。目前,在大中型企业中已经得到了较好的运用,但是由于它是多平台的数据库,不可避免的默认配置也是适合多种情况的需求,因此需要用户需要在自定义的环境下对MySQL的使用进行加...
[root@bbs ~]# /usr/local/mysql/bin/mysqlcheck -Aao -auto-repair -uroot -p下面说下几个参数的含义 -a, --analyze 分析 [Analyze given tables]-o, --optimize 优化 [Optimize table]-A, --all-databases 所有的数据库 [Check all the database]--auto-repair 自动修复 [If a checked table is corrupted, automatically fix it. Repairing will be done after all tables...
数据库是WEB大多数应用开发的基础。如果你是用PHP,那么大多数据库用的是MYSQL
最近有几个人问我相同问题,安装了mysql,然后用 telnet ip 3306,端口后报Host '192.168.1.163' is not allowed to connect to this MySQL serverConnection closed by foreign ,虽然自己以前也碰到过,后来解决了,但是觉得还是值得贴出来,估计会有很多人同样碰到过,解决办法:
同MongoDB,Redis这样的NoSQL数据库的复制相比,MySQL复制显得相当复杂! 概述 首先主服务器把数据变化记录到主日志,然后从服务器通过I/O线程读取主服务器上的主日志,并且把它写入到从服务器的中继日志中,接着SQL线程读取中继日志,并且在从服务器上重放,从而实现MySQL复制。
最简单的,通过执行mongod即可以启动MongoDB数据库服务,mongod支持很多的参数,但都有默认值,其中最重要的是需要指定数据文件路径,或者确保默认的/data/db存在并且有访问权限,否则启动后会自动关闭服务。Ok,那也就是说,只要确保dbpath就可以启动MongoDB服务了
最近小弄下Percona Xtrabackup,写脚本做测试,对这个世界唯一的开源免费(the world’s only open-source free)MySQL(the world’s most popular open source databases这句我也很喜欢 lol:)热备工具有了一些懵懂的认识,对于付费的InnoDB Hot Backup我们有了更欢乐的选择。Percona Xtrabackup工具主要有两部分构成,一个就是c写的xtrabackup命令,它又有多个版本,分别对应不同版本(5.0及以上)的MySQL/XtraDB以及InnoDB的差别(bui...
随机读取数据库记录,搜索发现很多人都使用 order by rand() 来达到该目的,这是mysql提供的功能。但是实际上存在非常严重的性能问题。 如果表里记录不多,偶尔用一下也可以。但是如果数据多的话,就会凸显出查询的性能问题。 随机查询5条记录: SELECT * FROM `table` ORDER BY RAND() LIMIT 5; 在数十万记录的表里,这样的查询大概要5-8秒,甚至更多时间。
为什么突然想说说临时表呢,之前都没有太过多的留意这些知识,是昨天以前的一个同事问了我一句关于临时表的疑问,我也顺便加深写认识。其实,我对于MySQL临时表的应用可以说是一无所知,说的最多听得最多的也都是,查询语句时用到临时表的情况,就是说的internal temporary table,是MySQL自己因为执行某个操作需要额外使用的,而另一种就是user-defined,用户自己定义的(create temporary table); 之前在798game的时候,公司的手...
• MySQL 连接
所谓连接查询,就是通过连接,使查询的数据从多个表中检索取得。在 SELECT 的 FROM 子句中写上所有有关的表名,就可以得到由几个表中的数据组合而成的查询结果。连接条件可在 FROM或 WHERE 子句中指定,WHERE 和 HAVING 子句可包含其搜索条件,以供进一步筛选连接之后的结果集。 目前可实现的连接有:自然连接(Natural Join),内连接(Inner Join), 外连接(Outer Join), 交叉连接(Cross Join) etc. 谓词 JOIN USING 可按照指定的列...
谁都不想弄丢家门钥匙,但对很多人来说,这样的事情总会发生几次。MySQL密码也是一样,把它写在文档上不太安全,记在脑子里又难免会忘记。 如果你忘记了MySQL密码,如何重置它呢? 下面是错误答案: 首先停止MySQL服务,然后使用skip-grant-tables参数启动它
MySQL是关系型数据库中的明星,MongoDB是文档型数据库中的翘楚。下面通过一个设计实例对比一下二者:假设我们正在维护一个手机产品库,里面除了包含手机的名称,品牌等基本信息,还包含了待机时间,外观设计等参数信息,应该如何存取数据呢? 如果使用MySQL的话,应该如何存取数据呢? 如果使用MySQL话,手机的基本信息单独是一个表,另外由于不同手机的参数信息差异很大,所以还需要一个参数表来单独保存。
近3天十大热文
- [70] IOS安全–浅谈关于IOS加固的几种方法
- [67] Twitter/微博客的学习摘要
- [64] 如何拿下简短的域名
- [61] find命令的一点注意事项
- [61] android 开发入门
- [60] Go Reflect 性能
- [58] 流程管理与用户研究
- [57] 图书馆的世界纪录
- [56] 读书笔记-壹百度:百度十年千倍的29条法则
- [56] Oracle MTS模式下 进程地址与会话信
赞助商广告