您的位置:首页技术开发数据库教程 → MySQL数据目录的位置介绍

MySQL数据目录的位置介绍

时间:2008/11/25 11:22:00来源:本站整理作者:我要评论(0)

从概念上讲,大多数关系数据库系统都是类似的:它们都由一组数据库组成,且每个数据库都包含一组表。但是,所有的系统都有自己的管理数据的方法, MySQL也不例外。

在缺省设置时,由MySQL服务器mysql管理的所有数据都存储在MySQL数据目录中。所有的数据库和提供有关服务器操作信息的状态文件也存储在那里。如果要执行MySQL安装的管理职责,应该熟悉数据目录的布局和使用。

本章包括以下内容:

怎样确定数据目录的位置。需要了解这一点,以便有效地管理其内容。

服务器怎样组织和提供对它所管理的数据库和表的访问。

在哪里查找由服务器产生的状态文件且文件中包含什么内容。它们的内容提供了关于服务器运行的信息,如果您遇到问题,这些信息将是有用的。

如何改变数据目录或单个数据库的缺省布局或组织。这对于管理系统的磁盘资源分配是重要的─例如,通过在驱动器中平衡磁盘的活动,或通过利用更多的可用空间将数据重定位到文件系统中。还可以使用这个知识来计划新数据库的布局。

即使不执行任何MySQL管理职责,也能通过阅读本章的内容而有所收获,它决不会影响您对如何运行服务器有更好的想法。

数据目录的位置

缺省数据库的位置编译在服务器中。如果您是在一个源程序分发包中安装MySQL,典型的缺省位置可能是/ us r / l o c a l / v a r;如果在二进制分发包中安装MySQL,则为/ us r / l o c a l / mysql/d a t a;在RPM 文件中安装,为/ v a r / l i b / mysql。

数据目录的位置可以在启动服务器时通过--datadir = / p a t h / to / dir 明确地指定。如果您想将数据目录放置在其他地方而非缺省的位置,则这个选项是有用的。

作为一名MySQL管理员,您应该知道数据目录在哪里。如果运行多个服务器,那么您应该掌握所有数据目录的位置。但是,如果不知道目录的位置(或许您正在代替前一位管理员,而他留下的记录很糟糕),有几种方法可以用来查找它:

可使用mysqladmin 变量直接从服务器中得到数据目录路径名。在UNIX 中,输出结果类似于如下所示:

该输出结果指明了服务器主机中数据目录的位置/ us r / l o c a l / v a r。

在Windows 中,输出结果类似于如下所示:

如果正在运行多个服务器,它们将监听不同的TCP/IP 端口号和套接字。可以通过提供合适的--port 或--socket 选项连接到每个服务器监听的端口和套接字上:

以下为引用的内容:

  % mysqladmin -- port=port_num variables

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

mysqladmin 命令可在您连接服务器的任何一台主机上运行。如果需要连接到远程主机上的服务器,则使用--host = host_name 选项:

以下为引用的内容:

  % mysqladmin --host=host_name variables

在Windows 中,您可以购买Windows NT 服务器,它通过使用--pipe 迫使一个指定的管道连接,并使用--socket = pipe_name 指定该管道的名称,在该管道上进行监听。

以下为引用的内容:

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

可使用ps 来查看任何当前执行mysql进程的命令行。试一试下列的命令(根据您的系统所支持的ps 版本)并查找显示在输出结果中的这些命令的- - d a t a d i r:

以下为引用的内容:

  % ps axww | grep mysqld BSD-style ps

  % ps -ef | grep mysqld System V-style ps

如果系统运行多个服务器(因为一次发现了多个数据目录位置),则ps 命令将会特别有用。它的缺点是: ps 必须运行在服务器的主机上,并且除非--datadir 选项在mysqld 命令行中明确指定,否则将产生无用的信息。

如果MySQL从源程序分发包中安装,可以检查其配置信息以确定数据目录的位置。例如,在最高级的Makefile 中该位置是可用的。但是,要小心:位置是Makefile 中的变量localstatedir 的值,而不是datadir 的值。同样,如果分发包定位在NFS 装配文件系统中,并且是用于为几个主机建立MySQL的,则配置信息反映最近建立分发包的主机。它可能不显示您感兴趣的主机的数据目录。

如果前面的任何方法都不成功,可使用find 搜索数据库文件。下列命令将搜索. f r m(描述)文件,它是MySQL安装程序的组成部分:

以下为引用的内容:

  % find / -name " *.frm" -print

在本章的这些例子中,笔者将MySQL数据目录的位置表示为DATA D I R。您可以将其解释成为您自己的机器中的数据目录的位置。

相关视频

    没有数据

相关阅读 iPhone数据迁移怎么用 iOS 12.4数据迁移功能使用教程数据库流行度排行2019年9月 数据库排行榜2019年最新版Apex英雄武器配件作用介绍 Apex英雄全武器配件作用及数据详解apex英雄武器伤害及武器排名介绍 apex英雄武器数据一览Apex英雄Untrusted system file错误代码解决方法cfM4A1猎神怎么样 cfM4A1猎神技能数据介绍Dysmantle游戏什么时候出 Dysmantle发售时间一览微信数据报告怎么查

文章评论
发表评论

热门文章 oracle10g安装图解(wi

最新文章 数据库流行度排行2019oracle10g安装图解(wi SQL2008全部数据导出导入两种方法SQL2005新建复制“找不到存储过程 错误:28Dos远程登录mysql数据库详细图文教程mysql怎么开启远程登录功能

人气排行 mysql自动定时备份数据库的最佳方法-支持wiVisual Foxpro 6.0安装向导图文教程SQL Server 2008 安装图文教程SQL2008全部数据导出导入两种方法SQL 2000/2005/2008 的收缩日志方法,和清理mysql出 Can't connect to MySQL server onoracle10g安装图解(win7)sql2005安装图解_(sql server2005)安装教程