27扩展MySQL_MySql5_1
官方文档中文版直接复制 部分字符,表格可能失效,可于官网查看
第27章:扩展MySQL
目录
27.1. MySQL内部控件
27.1.1. MySQL线程
27.1.2. MySQL测试套件
27.2. 为MySQL添加新函数
27.2.1. 自定义函数接口的特性
27.2.2. CREATE FUNCTION/DROP FUNCTION 语法
27.2.3. 添加新的自定义函数
27.2.4. 添加新的固有函数
27.3. 为MySQL添加新步骤
27.3.1. 步骤分析
27.3.2. 编写步骤
27.1. MySQL内部控件
27.1.1. MySQL线程
27.1.2. MySQL测试套件
本章包含许多在你处理MySQL代码时需要了解的你事情。如果你想投入到MySQL的开发中,或想要接触到最新的中间版本的代码,或者就是想了解开发的进度,请参阅2.8.3节,“从开发源代码树安装”的说明。如果你对MySQL的内部插件感兴趣,你也可以订阅我们的内部插件邮件列表。这个列表的流量相对低一些。欲知如何订阅的详情,请参阅1.7.1.1节,“MySQL邮件列表”。在MySQL AB 的所有开发人员都在内部插件列表里, 此外,我们帮助那些正在处理MySQL代码的人。请随意使用这个邮件列表来问代码有关的问题,也可用它来发送你想奉献给MySQL项目的 补丁!
27.1.1. MySQL线程
MySQL服务器创建如下线程:
*
TCP/IP 连接线程处理所有连接请求,并为每一个连接创建一个新的专用线程来处理认证和SQL查询处理。
*
Windows NT 平台上有一个名为管道处理程序(pipe handler)的线程,它和名为管道连接请求(pipe connect requests)的TCP/IP连接线程做同样的工作。
*
信号线程处理所有的信号,这个线程通常也处理报警和调用process_alarm() 函数来强制使得空闲时间太长的连接超时。
*
若mysqld是与DUSE_ALARM_THREAD线程一起编译的,这个专用线程是处理 创建的警报的。这个线程用在一些sigwait()函数有问题的系统上,或者用在你想在应用程序中使用thr_alarm()代码而不带专用信号处理线程之时。
*
若想使用flush_time=val选项,会创建一个专用线程以给定的时间间隔刷新所有表格。
*
每个连接都有它自己的线程。
*
每个被使用INSERT DELAYED 的不同表格都会有自己的线程。
*
若使用了master-host, 则会创建一个从属的复制线程从主线程读取并实施更新。
mysqladmin processlist 仅显示连接,INSERT DELAYED, 及复制线程
27.1.2. MySQL测试套件
27.1.2.1. 运行MySQL测试套件
27.1.2.2. 扩展MySQL测试套件
27.1.2.3. MySQL测试套件报告缺陷
包含在Unix源码和二进制分发版中的测试系统可以让用户和开发人员对MySQL代码施行回归测试。这些测试可以在Unix上进行,目前它们还不能在原生的Windows环境下进行。
当前的测试案例套件不能在MySQL中测试所有东西,


