社区
MySQL
帖子详情
mysql 对超大表的处理
象宇
2010-12-17 08:44:53
我假设个问题,就是我的一个数据库表,已经很多个G了,而其这个表所在的磁盘空间已经所剩无几了,我想把这个表分到其他的磁盘上存储。具体如何做啊?
手册上没有很明确的例子。
帮忙解决一下吧。
谢谢。
...全文
514
27
打赏
收藏
mysql 对超大表的处理
我假设个问题,就是我的一个数据库表,已经很多个G了,而其这个表所在的磁盘空间已经所剩无几了,我想把这个表分到其他的磁盘上存储。具体如何做啊? 手册上没有很明确的例子。 帮忙解决一下吧。 谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
27 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
象宇
2010-12-21
打赏
举报
回复
ACMAIN_CHM
的答案是正解,只不过,我还没有验证。
实际的情况还不知道会怎样。
gatx177
2010-12-17
打赏
举报
回复
删除冗余数据~~~~~~~~~~~~~~~
ACMAIN_CHM
2010-12-17
打赏
举报
回复
没有办法,目前的MYSQL版本在WINDOWS都不支持这个选项。
WWWWA
2010-12-17
打赏
举报
回复
用MYSQLDUMP备份、再导入吧,否则换系统(UNIX)
象宇
2010-12-17
打赏
举报
回复
[Quote=引用 15 楼 wwwwa 的回复:]
DATA DIRECTORY INDEX DIRECTORY
windows 下这两个参数不起作用.
[/Quote]
那我该如何做,没有方法吗?
ACMAIN_CHM
2010-12-17
打赏
举报
回复
WINDOWS中不支持符号连接,所以不能实现数据库文件存储在不同位置。
WWWWA
2010-12-17
打赏
举报
回复
DATA DIRECTORY INDEX DIRECTORY
windows 下这两个参数不起作用.
象宇
2010-12-17
打赏
举报
回复
CREATE TABLE ts (id INT, purchased DATE)
PARTITION BY RANGE(YEAR(purchased))
SUBPARTITION BY HASH(TO_DAYS(purchased))
(
PARTITION p0 VALUES LESS THAN (1990)
(
SUBPARTITION s0
DATA DIRECTORY = '/disk0/data'
INDEX DIRECTORY = '/disk0/idx',
SUBPARTITION s1
DATA DIRECTORY = '/disk1/data'
INDEX DIRECTORY = '/disk1/idx'
),
PARTITION p1 VALUES LESS THAN (2000)
(
SUBPARTITION s0
DATA DIRECTORY = '/disk2/data'
INDEX DIRECTORY = '/disk2/idx',
SUBPARTITION s1
DATA DIRECTORY = '/disk3/data'
INDEX DIRECTORY = '/disk3/idx'
),
PARTITION p2 VALUES LESS THAN MAXVALUE
(
SUBPARTITION s0
DATA DIRECTORY = '/disk4/data'
INDEX DIRECTORY = '/disk4/idx',
SUBPARTITION s1
DATA DIRECTORY = '/disk5/data'
INDEX DIRECTORY = '/disk5/idx'
)
);
我现在是考虑这个问题,如何解决。
这个是手册中的例子,是在linux下的,我如何在windows中实现,可以只把表分到 F:和G:两个磁盘下。
小小小小周
2010-12-17
打赏
举报
回复
主键问题,你的表结构发出来
WWWWA
2010-12-17
打赏
举报
回复
你的代码贴出来
象宇
2010-12-17
打赏
举报
回复
[Quote=引用 10 楼 zuoxingyu 的回复:]
partition_definition:
PARTITION partition_name
[VALUES {
LESS THAN (expr) | MAXVALUE
| IN (value_list) }]
[[STORAGE] ENGINE [=] engine-nam……
[/Quote]
我看着手册尝试过,老是语法报错,所以来论坛求助,,,能不能给个实际的例子,各位达人······
zuoxingyu
2010-12-17
打赏
举报
回复
partition_definition:
PARTITION partition_name
[VALUES {
LESS THAN (expr) | MAXVALUE
| IN (value_list) }]
[[STORAGE] ENGINE [=] engine-name]
[COMMENT [=] 'comment_text' ]
[DATA DIRECTORY [=] 'data_dir']
[INDEX DIRECTORY [=] 'index_dir']
[MAX_ROWS [=] max_number_of_rows]
[MIN_ROWS [=] min_number_of_rows]
[TABLESPACE [=] (tablespace_name)]
看分区的红色部分。可以指定某个分区的存储位置。
象宇
2010-12-17
打赏
举报
回复
[Quote=引用 3 楼 acmain_chm 的回复:]
你是想把数据库移到另一个硬盘分区上,不是做表分区。
你可以先停止你的MYSQL服务,然后把整个DATADIR目录复制到目标硬盘分区上,然后再修改MY.INI中的DATADIR参数。再启动MYSQL就可以了。
[/Quote]
我晕,老大,我明明写的是“分”,而不是移!!!
WWWWA
2010-12-17
打赏
举报
回复
直接COPY容易出问题,INNODB引擎的表不能直接COPY,最好用MYSQLDUMP备份
小小小小周
2010-12-17
打赏
举报
回复
1:mysqldump 出来之后,修改my.cnf里面的数据目录,datadir=新的磁盘,再还原;适用myisam表.
2:要是innodb的话,dump出来之后,修改innodb_data_file_path的最后一个表空间到新的目标目录,再还原.
3:把datadir的目录整个复制到新的目标地址,再用软连接连接到旧地址,不需要修改配置文件(适用myisam)---linux
4:在data目录的同级,新加一个后缀名为sym的文件.把某个库的地址指到新地址如(E:\data\Q)----windows
iihero
2010-12-17
打赏
举报
回复
转移数据,可以直接复制DATADIR目录,再修改配置文件。
或者将整个MySQL目录转移到别的分区,然后修改配置文件,重新配置服务。
都可以的。
WWWWA
2010-12-17
打赏
举报
回复
OR
直接用MYSQLDUMP备份数据库,再新建数据库,导入备份
WWWWA
2010-12-17
打赏
举报
回复
你的MYSQL版本
http://dev.mysql.com/doc/refman/5.1/zh/partitioning.html
手册比较详细
ACMAIN_CHM
2010-12-17
打赏
举报
回复
你是想把数据库移到另一个硬盘分区上,不是做表分区。
你可以先停止你的MYSQL服务,然后把整个DATADIR目录复制到目标硬盘分区上,然后再修改MY.INI中的DATADIR参数。再启动MYSQL就可以了。
象宇
2010-12-17
打赏
举报
回复
windows mysql 5.1 以上才有分区 手册上没有很详细的例子。
加载更多回复(7)
mysql
超大
表
处理
方式是_知乎 Hive Metastore 实践:从
MySQL
到 TiDB
随着业务数据增长,知乎
MySQL
单
表
数据量剧增,影响任务稳定性。此前数据治理方案效果不佳,业内分库分
表
和Federation方案也有缺陷。最终选择TiDB,它兼容
MySQL
协议,分布式架构
表
现优。迁移后查询效率显著提升,后续还将开发TiBigData项目。
mysql
超大
表
处理
方式是_
Mysql
数据库大
表
优化方案和
Mysql
大
表
优化步骤
本文提供了一套详尽的
MySQL
性能优化方案,涵盖单
表
优化、字段类型选择、索引策略、系统参数调优等多个方面,并介绍了MyISAM与InnoDB引擎的特点及适用场景。
mysql
超大
表
处理
方式是_第29问:
MySQL
的复制心跳说它不想跳了
本文通过实验重现了
MySQL
复制过程中出现的“心跳与本地信息不兼容”错误,详细分析了错误产生的原因,涉及到binlog的结构及心跳包的解析,并提出了相应的解决方案。
mysql
表
太大删不掉_
Mysql
如何 删除大
表
本文分享了在
MySQL
中
处理
超大
表
时遇到的问题及解决方案,包括使用硬链接减少DDL时间、通过truncate分段删除文件避免IO阻塞等技巧。
MySQL
57,064
社区成员
56,762
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章