HandlerSocket安装
安装MysqlPREFIX=/opt/apptar zxvf mysql-5.1.51.tar.gzcd mysql-5.1.51./configure –prefix=$PREFIX/mysql-5.1.51 –enable-assembler –with-client-ldflags=-all-static –with-unix-socket-path=/tm...
建立连接
如何建立一个连接首先在mysql有一个监听线程,用来监听所有的数据库连接。当新的连接请求到达之后,会将这个连接请求交给mysqld.cc来处理,下面的处理的函数pthread_handler_t handle_connections_sockets(void * ...
围脖拾语
接下来的一段时间会持续关注围脖。偶有摘录,视为佳品, 不为炒作,只供品鉴.五年前你初到北京,成名的道路曲折又漫长,每年深秋叶红时,漂泊的人们在瑟瑟的风中盘点收获,只求有人陪,奢谈浪漫。@巩新亮五...
人生最动听的一句话是什么??
这个世界上最动听的一句话,不是“我爱你”,而是“你的肿瘤是良性的”( "The most beautiful words in the English language are not 'I love you,' but 'It's benign.'" (Woody Allen, Deconstructing...
mysql日的字符集与排序规则
首先是show character set与show collation查看系统支持的字符集和排序规则;mysql默认支持latin1字符集并且以latin_swedin_ci为排序规则;binary和char binary的区别:举个例子: create table testtype(col1 char(5...
MySQL privilege
PrivilegeColumnContextCREATECreate_privdatabases, tables, or indexesDROPDrop_privdatabases or tablesGRANT OPTIONGrant_privdatabases, tables, or stored routinesREFERENCESReferences_...
thread状态
为了控制thread, mysql有很多的参数, 例如max_connections, max_user_connections, connect_timeout, character_set_connection, collation_connection, innodb_commit_concurrency, innodb_concurrency_tick...
binary log解析(一)
目前的解析是针对mysql 5.1.45, 其它版本很可能会有不一样, 所以不适合其它版本, 但基本思想应当是差不多的,所以可以借鉴;Query_log_event: insert/delete/update语句都是这种类型;它的binary log structure是:eve...
mysqldump 命令
mysqldump是用来导出mysql的数据的;--all-databases: 可以导出所有的DB, 但不包括information_schema, mysql database里也只有少量的信息; -t, --no-create-info: 不包含建表的信息;-n, --no-create-db: Suppress...
double write的作用
什么是double write: doulbe write是开辟在innodb tablespace文件上的一块有100个连续page的空间. 注意它是在innodb tablespace文件上. 它的作用是当mysql将数据刷新到data file的时候, 先将数据write + fsync()到d...
group commit
为了这个事情, 真的是非常艰苦的在坚持着, 做了很多的测试, 想了很多很多;以下摘录点:http://kristiannielsen.livejournal.com/12254.html: 这个SITE说有详细的描述, 如果想知道更多信息,最好是去看源代码. 那里...
RAID(2)--软RAID创建
mdadm是multiple devices admin的简称,它是Linux下的一款标准的软件 RAID 管理工具,作者是Neil Brown。但是我在虚假机上测试的时候,创建的软阵列不会随系统自动启动起来:首先创建新的阵...
RAID(1)--RAID原理
RAID的全称是廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),于1987年由美国Berkeley 大学的两名工程师提出的RAID出现的,最初目的是将多个容量较小的廉价硬盘合并成为一个大容量的“逻辑盘”或磁盘阵...
linux文件处理
df: 可以进看当前的系统disk space usagefdisk:可以用来查看,管理disk/etc/fstab: 可以查看硬盘的mount信息; 如果修改了这个文件的内容,可以通过 sudo mount -a命令来重载; du: 查看文件或文件夹的space usage;s...
mysql 参数一览
thread_connected: 当前已连接的线程数;max_connections: 能连接的最大数目;init_connect: 当客户端与server建立连接的时候会执行的一些操作; 最典型的是 init_connect='set autocommit=0'. mysql告诉我们这个作用...
mysqld.cc
在mysqld.cc里定义了所有的sql_mode. 还定义了记录各种统计状态信息的变量以及统计信息的类型;SHOW_VAR status_vars[]= {...);mysql_init_variables: 初始化各种参数;mysqld_get_one_option: 这个函数用来获得某...
study mysql source code
今天终于开始学习mysql的源代码了, 现一一记录下看到的和想过的;sql_connect.cc1. get_or_create_user_conn2. check_for_max_user_connections3. decrease_user_connections4. time_out_user_resource_limits5...
跳过复制过程中出现的错误
stop slave;set global sql_slave_skip_counter=1;start slave;这里不一定就非要stop slave可以根据实际情况停止sql_thread或IO_thread;这是跳过复制过程中的某一个错误,如果想跳过复制过程中某一类错误,可以使...
gdb使用介绍
gdb有很多命令, 记录一下常用和不常用的 :)start: 开始执行; quit: 退出gdb;next: 执行下一行step: 进入某个函数内容执行continue: 连接运行而非单步运行;这对于breakpoint很有用;run: 让程序重新运行;set va...
不能使用xterm
shell> su - mysqlshell> xtermXlib: connection to ":0.0" refused by serverXlib: No protocol specifiedxterm Xt error: Can't open display :0.0这个问题该如何解决呢?1.用root登陆 2.执行xhost +3.su - m...