转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> 其他 >> 正文
MySQL数据目录结构(1)         ★★★★

MySQL数据目录结构(1)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:2286 更新时间:2009/4/22 23:21:52
------+----------------------+| back_log             | 5                    || connect_timeout      | 5                    || basedir              | c:\mysql\            || datadir              | c:\mysql\data\       |....



如果你有多个服务器在运行
它们将在不同的TCP/IP端口或套接字上监听通过提供连接服务器正在监听的端口或套接字的--port或--socket选项你可以轮流获得它们每一个的数据目录信息

%msqladmin --port=port_name variables

%mysqladmin --socket=/path/to/socket variables

mysqladmin命令可运行在任何你能从其连接服务器的主机上
如果你想在一个远程主机连接服务器使用一个--host=host_name选项

%mysqladmin --host=host_name variables

在Windows上
你可以通过使用--pipe强制一个命令管道连接和--socket=pipe_name指定管道名来连接监听一个命令管道的NT服务器

c:\mysqladmin --pipe --socket=pipe_name variables

你可以使用ps命令查看任何正在运行mysqld 进程的命令行。

试一下下列命令之一并寻找
--datadir

%ps axww | grep mysql        BSD风格

%ps -ef | grep mysqld            System V风格

如果你的系统运行多个服务器
ps命令可能特别有用因为你能马上发现多个数据目录位置缺点是必须在服务器上运行而且可能没有有用的信息产生除非在mysqld命令行上明确指定了--datadir选项。

如果MySQL是从一个源代码分发安装的
你可以检查其配置信息确定数据目录位置。例如位置可从顶级Makefile中获得但是注意位置是Makefile中的localstatedir值不是datadir而且如果分发位于一个NFS挂载的文件系统并用来为多个主机构建MySQL配置信息反映了分发被最新构建的主机这可能不能提供你感兴趣的主机的数据目录信息。

如果上述方式失败
你可以用find寻找数据库文件下列命令寻找“.frm”文件它是任何MySQL安装的一部分



% find / -name ".frm" -print



在下文各例中用DATADIR表示MySQL数据目录位置。

2、数据目录结构



MySQL数据目录包含了服务器管理的所有数据目录
这些文件被组织成一个树状结构通过利用Unix或Windows文件系统的层次结构直接实现。

每个数据库对应于数据目录下的一个目录。

在一个数据库中的表对应于数据目录下的文件。



数据目录也包含由服务器产生的几个状态文件
如日志文件。这些文件提供了关于服务器操作的重要信息。对管理特别在出了问题而试图确定问题原因时很有价值。例如如果某个特定查询杀死服务器你可以通过检查日志文件判别捣乱的查询。

2
.1 MySQL服务器怎样提供对数据的访问



在数据目录下的一切由一个单独的实体
-MySQL服务器mysqld管理客户程序绝不直接操作数据。相反服务器提供数据可访问的切入点它是客户程序与它们想使用的数据之间的中介。

当服务器启动时
如果有需要它打开日志文件然后通过监听网络连接位数据目录呈现一个网络接口。要访问数据客户程序建立对服务器的一个连接然后以MySQL查询传输请求来执行希望的操作。服务器执行每一个操作并将结果发回用户。服务器是多线程的并能服务多个同时的客户连接。然而因为修改操作一个执行一个实际效果是顺序化请求以使两个客户决不能在同一时刻改变同一记录。

在正常的情况下
让服务器作为数据库访问的唯一仲裁者提供了避免可从同时访问数据库表的多个进程的破坏的保证。管理员应该知道有时服务器没有对数据目录的独裁控制。

当你在一个单个数据目录上运行多个服务器。一般倪云新一个服务器管理主机上的所有数据库
但是有可能运行多个服务器。如果这完成提供对多个独立数据目录的访问没有相互影响的问题但哟也能启动多个服务器并指向同一个目录。一般地这不是一个好主意。如果你试图这样最好是你的系统提供良好的文件锁定功能否则服务器将不能正确协作。如果你将多个服务器同时写入日志文件你也冒着你的日志文件称为混乱的根源的风险。

在你运行isamchk和myisamchk时。isamchk和myisamchk实用程序用于表的维护、诊错和修复
就想你想的那样因为这些程序可以修改表内容允许它们与服务器正在操作的同时对表操作这样能导致表损坏。理解如何限制这种相互影响是很重要的这样你不会损坏你的表。

2
.2 数据目表示



每个MySQL服务器管理的数据库有自己的数据库表

上一页  [1] [2] [3] [4]  下一页


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台