mysql dba系统学习(2)了解mysql的源码目录及源文件

了解mysql的源码目录

包括客户端代码,服务端代码,测试工具和其他库文件

Mysql源码结构

Bdb 伯克利DB表引擎

BUILD 构建工程的脚本

Client 客户端

Cmd-line-utils 命令行工具

Config 构建工程所需的一些文件

Dbug Fred Fish的调试库

Docs 文档文件夹

Extra 一些相对独立的次要的工具

Heap HEAP表引擎

Include 头文件

Innobase INNODB表引擎

Libmysql 动态库

Libmysql_r 为了构建线程安全的libmysql库

Libmysqld 服务器作为一个嵌入式的库

Man 用户手册

Myisam MyISAM表引擎

Myisammrg MyISAM Merge表引擎

Mysql-test mysqld的测试单元

Mysys MySQL的系统库

Ndb Mysql集群

Netware Mysql网络版本相关文件

NEW-RPM 部署时存放RPM

Os2 针对OS/2操作系统的底层函数

Pstack 进行堆栈

Regex 正则表达式库(包括扩展的正则表达式函数)

SCCS 源码控制系统(不是源码的一部分)

Scripts 批量SQL脚本,如初始化库脚本

Server-tools 管理工具

Sql 处理SQL命令;Mysql的核心

Sql-bench Mysql的标准检查程序

Sql-common 一些sql文件夹相关的C文件

SSL 安全套接字层

Strings 字符串函数库

Support-files 用于在不同系统上构建Mysql的文件

Tests 包含Perl和C的测试

Tools

Vio 虚拟I/O库

Zlib 数据压缩库,用于WINDOWS

下面给出几个比较重要的目录清单:

文件清单

目录名 文件名 注释

Client

get_password.c 命令行输入密码

Mysql.cc MySQL命令行工具

Mysqladmin.cc 数据库weihu

Mysqldump.c 将表的内容以SQL语句输出,即逻辑备份

Mysqlimport.c 文本文件数据导入表中

Mysqlmanager-pwgen.c 密码生成

Mysqlshow.c 显示数据库,表和列

Mysqltest.c 被mysql测试单元使用的测试程序

----------------------------------------------------------------------------------------------------------------

时间: 2024-11-02 09:59:45

mysql dba系统学习(2)了解mysql的源码目录及源文件的相关文章

mysql dba系统学习(18)mysql主从复制的实现

mysql主从复制的实现 1.MySQL复制的实现原理 MySQL支持单向.双向复制.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入一个二进制日志文件中,并创建一个索引文件以跟踪日志循环.这些日志可以记录发送到从服务器的更新.当一个从服务器连接主服务器时,日志文件会通知主服务器,从服务器在日志中读取的最后一次成功更新的位置.接着,从服务器在上次成功更新的位置处开始进入更新操作.更新完成后从服务器开始进入等待状态,等待主服务器后续的更新.需要注意

mysql dba系统学习(22)数据库事务详解

上个星期去面试数据库管理员的工作,笔试通过之后就是直接的面试,他问了我一个问题,叫我介绍哈数据库的事务的看法和理解,但是不知所错的没有章法的乱答一气,唉唉,基础不扎实啊. 下面来好好的学习哈mysqlinnodb引擎的事务相关的知识 一,我们为什么需要数据库事务呢? 这个问题看似很简单,但是真的能够说明白还是要看看我们的基本功是不是扎实 例如,用户A给用户B通过ATM机转账1000元,那么A账户上就会少1000元,而B用户会多1000元 在这个过程中,两个环节是关联的.第一个账户划出款项必须保证

mysql dba系统学习(1)mysql各版本编译安装

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司.MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性.MySQL的SQL语言是用于访问数据库的最常用标准化语言.MySQL软件采用了双授权政策(本词条"授权政策"),它分为社区版和商业版,由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库.由于其社区

mysql dba系统学习(15)mysql用户管理之二

mysql用户管理 一,创建和删除用户 mysql> select current_user();  查询当前的登录用户 +----------------+ | current_user() | +----------------+ | root@localhost | +----------------+  创建用户的时候没有分配任何权限,%表示的是任何机器,但是不包括localhost和127.0.0.1 mysql> create user 'chenzhongyang'@'%' id

mysql dba系统学习(4)mysql的多实例multi启动停止

mysql的多实例配置安装 一,什么情况下我们会考虑一台物理服务器上部署多个实例,大致有以下几种情况: 1,采用了数据伪分布式架构的原因,而项目启动初期又不一定有那多的用户量,为此先一组物理数据库服务器,但部署多个实例,方便后续迁移: 2,为规避mysql对SMP架构不支持的缺陷,使用多实例绑定处理器的办法(NUMA处理器必须支持,不过现在大部分处理器都支持的!),把不同的数据库分配到不同的实例上提供数据服务: 3,一台物理数据库服务器支撑多个数据库的数据服务,为提高mysql复制的从机的恢复效

mysql dba系统学习(3)mysql的启动停止

mysql的启动有很多方法,我们将来一一讨论 一,mysqld mysqld是mysql的服务 mysqld这种方式启动的时候会读取my.cnf文件中的[mysqld]和[server]组group (每一个组都有[]来分割) 一般的,我们通过这种方式手动的调用mysqld,如果不是出去调试的目的,我们一般都不这样做. 因为这种方式会使错误日志直接从终端输出,而不是记录在错误日志文件中,这样,如果mysql崩溃的话 我们也不知道原因. 连接方法 start [root@test4 ~]# /us

mysql dba系统学习(20)mysql存储引擎MyISAM

mysql存储引擎MyISAM 1,创建myisam表 mysql> create table t (id int , name varchar(30) , msg varchar(100)) engine = MyISAM; mysql> show table status like "t" \G ; *************************** 1. row *************************** Name: t Engine: MyISAM

mysql dba系统学习(10)innodb引擎的redo log日志的原理

在InnoDB中,bufferpool里面的dirtypage一方面可以加快数据处理速度,同时也会造成数据的不一致(RAMvsDISK).本文介绍了dirtypage是如何产生,以及InnoDB如何利用redolog如何消除dirtypage产生的数据不一致. 当事务(Transaction)需要修改某条记录(row)时,InnoDB需要将该数据所在的page从disk读到bufferpool中,事务提交后,InnoDB修改page中的记录(row).这时bufferpool中的page就已经和

mysql dba系统学习(8)查询日志文件功能

查询日志的作用是记录所有客户端发来的sql语句,也就是记录客户端的所有操作 Log参数将要过时,现在用general_log来代替 打开查询日志功能 mysql> showvariables like "%log"; +----------------+-------+ | Variable_name| Value | +----------------+-------+ | back_log| 50| | general_log| OFF| | log| OFF| | rela