今天在CSDN上有人问起分开存储数据文件的问题。
现在写下来。
为了突破磁盘搜索的瓶颈。我们要把MYSQL的数据和索引保存到其他不同的磁盘中。目前还只是支持MyISAM引擎。在MYSQL中,官这个叫象征性链接。
1、在WINDOWS下的象征性链接。数据库目录:E:\LAMP\mysql5\data
数据库名字:symlink
目的数据库目录:D:\MYSQLDATA
如果原来的数据库目录下已经有symlink的话,停掉MYSQL服务。然后移动相应目录到目的数据库目录。
建立一个文本文件用来保存目的数据库路径:symlink.sym内容为:D:\MYSQLDATA\symlink
然后启动MYSQL服务。
现在进行测试:
创建数据库之前:
D:\MYSQLDATA>dir驱动器 D 中的卷是 新加卷卷的序列号是 58DF-80B4D:\MYSQLDATA 的目录2008-01-15 15:24 <DIR> .2008-01-15 15:24 <DIR> .. 0 个文件 0 字节 2 个目录 38,197,895,168 可用字节创建数据库:
create database symlink;use symlink;create table t1(id int not null auto_increment primary key);(1 row(s)affected)(0 ms taken)(0 row(s)affected)(0 ms taken)(0 row(s)affected)(0 ms taken)现在看这个目录:
D:\MYSQLDATA>dir驱动器 D 中的卷是 新加卷卷的序列号是 58DF-80B4D:\MYSQLDATA 的目录2008-01-15 15:25 <DIR> .2008-01-15 15:25 <DIR> ..2008-01-15 15:25 <DIR> symlink 0 个文件 0 字节 3 个目录 38,197,882,880 可用字节D:\MYSQLDATA>cd symlinkD:\MYSQLDATA\symlink>dir驱动器 D 中的卷是 新加卷卷的序列号是 58DF-80B4D:\MYSQLDATA\symlink 的目录2008-01-15 15:25 <DIR> .2008-01-15 15:25 <DIR> ..2008-01-15 15:25 61 db.opt2008-01-15 15:25 8,556 t1.frm 2 个文件 8,617 字节 2 个目录 38,197,882,880 可用字节2、LINUX下好像更简单。[david yeung ~]# mkdir /home/david_yeung/mysqldata[david yeung ~]# ln -s /usr/local/mysql/data/symlink /home/david_yeung/mysqldata/symlink[david yeung ~]# cd /home/david_yeung/mysqldata/[david yeung mysqldata]# cd symlink/[david yeung symlink]# lsdb.opt t1.frm t1.MYD t1.MYI[david yeung symlink]# ls -l婊璁?36
-rw-rw---- 1 mysql mysql 61 01-15 15:36 db.opt
-rw-rw---- 1 mysql mysql 8556 01-15 15:36 t1.frm
-rw-rw---- 1 mysql mysql 0 01-15 15:36 t1.MYD
-rw-rw---- 1 mysql mysql 1024 01-15 15:36 t1.MYI
再看一下表:
create table t_cs(id int not null,sym char(20) not null);(0 row(s)affected)(0 ms taken)[david yeung symlink]# ls -l婊璁?64
-rw-rw---- 1 mysql mysql 61 01-15 15:36 db.opt
-rw-rw---- 1 mysql mysql 8556 01-15 15:36 t1.frm
-rw-rw---- 1 mysql mysql 0 01-15 15:36 t1.MYD
-rw-rw---- 1 mysql mysql 1024 01-15 15:36 t1.MYI
-rw-rw---- 1 mysql mysql 8584 01-15 15:41 t_cs.frm
-rw-rw---- 1 mysql mysql 0 01-15 15:41 t_cs.MYD
-rw-rw---- 1 mysql mysql 1024 01-15 15:41 t_cs.MYI
其他问题我会在后续更新的。
分享到:
相关推荐
4. 将生成的Excel文件保存到本地文件系统。 5. 可能包含一个`test.sql`文件,用于生成大规模的测试数据。 这个示例对于需要在后端处理大量数据导出的开发者非常有用,它展示了如何利用Node.js高效地处理数据并生成...
本主题主要涉及如何使用Java通过Apache POI库操作Excel文件,并将数据导入到MySQL数据库中,以及反向操作,即从数据库中提取数据并导出到Excel。 首先,让我们深入了解一下Java中的Apache POI库。POI是Apache软件...
在MySQL数据库管理中,有时我们需要导出特定的数据或者部分数据,而不是整个数据库。传统的`mysqldump`工具虽然强大,但并不适用于这种情况。本文将介绍三种方法来解决这一问题。 **方法一:使用INSERT INTO......
以下是一个将文件保存到数据库的例子: ```csharp using System.Data.SqlClient; // 创建连接 SqlConnection conn = new SqlConnection("your_connection_string"); conn.Open(); // 将文件数据转换为二进制数组 ...
在本案例中,MySQL服务器在重启时遇到了PID文件找不到的问题,并且InnoDB存储引擎在尝试启动时报告了表空间冲突,表明某个表的数据文件可能已经被破坏或者与其它表文件混淆。 首先,我们来看一下MySQL数据库的存储...
# 0:如果innodb_flush_log_at_trx_commit的值为0,log buffer每秒就会被刷写日志文件到磁盘,提交事务的时候不做任何操作(执行是由mysql的master thread线程来执行的。 # 主线程中每秒会将重做日志缓冲写入磁盘的...
2. `datadir`: 数据库的存放路径,保存所有数据库的数据文件。 3. `port`: MySQL服务器监听的端口号,默认为3306。 4. `socket`: 本地连接使用的套接字文件路径。 5. `basedir`: MySQL安装目录。 6. `innodb_buffer_...
通常,OICQ的数据是保存在本地磁盘上的文件中,这些文件可能包含XML、二进制或其他专有格式。要将这些数据转换为MySQL,我们需要解析OICQ数据文件,提取出我们需要的信息,如聊天记录、用户ID、好友列表等。 1. ...
此外,在修改`my.ini`文件时,应仔细检查是否有其他与数据目录相关的设置,如`innodb_data_home_dir`和`innodb_log_group_home_dir`,这些设置也需要同步更新至新的目录路径。 遵循上述指南,您可以顺利地将MySQL...
通过阅读这份文档,你可以了解到如何将文件流技术应用到MySQL的大文本和二进制文件操作中。 综上所述,MySQL提供了存储大文本和二进制文件的能力,而Java的`BufferedInputStream`和`BufferedOutputStream`则是处理...
本篇文章将深入探讨如何使用C#将图片或其他文件保存到数据库中,这对于需要存储用户上传内容或进行数据备份的应用场景至关重要。 首先,我们需要了解数据库中的两种常见方式来存储非结构化数据如图片或文件:BLOB...
在 MySQL 8 中,默认的数据目录结构包括三个主要部分:数据库文件的存放路径、相关命令目录和配置文件目录。 1. 数据库文件的存放路径 MySQL 数据库文件的存放路径是 `/var/lib/mysql/`。在这个目录下,MySQL 将...
在Linux操作系统中,备份MySQL数据是一项重要的任务,以防止数据丢失或系统故障。本文将详细介绍如何利用FTP(文件传输协议)来实现这一过程。FTP允许你在本地系统与远程服务器之间安全地传输文件,使得备份过程变得...
如果 MySQL 数据库因为磁盘问题丢失了 .frm 文件,但 IBData 和 Log 文件均完好,我们可以从中恢复出库或导出数据。恢复步骤如下: 1. 恢复原数据库的配置文件:包括日志大小 文件路径等 2. 在 [mysqld] 段中增加:...
如果需要从其他主机访问MySQL服务器,还需要在MySQL中授权远程登录: ```sql GRANT ALL PRIVILEGES ON *.* TO 'test'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES; ``` #### 十一、关闭MySQL服务 最后,了解如何安全...
在IT领域,将电脑数据读取并存储到数据库中是一项常见的任务,这涉及到操作系统交互、数据处理、数据库管理和用户界面展示等多个技术环节。以下是对这个主题的详细解释: 首先,我们要理解“读取电脑数据”。这通常...
将原有的MySQL数据文件完整地复制到新的存储目录中,包括所有表空间文件、日志文件等。 1. **复制数据文件** ```bash cp -rp /var/lib/mysql /mnt/mysql/mysql ``` 这里的`-r`表示递归复制整个目录,而`-p`则...