mysql中分区表的疑问?
时间:2011-05-19
来源:互联网
使用centos5, mysql5.5.12版本:
问题1: 在my.cnf中的[mysqld]下添加了innodb_file_per_table=1,重启mysql后,执行以下语句
mysql> show variables like '%per_table%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_file_per_table | OFF |
+-----------------------+-------+
此参数怎么始终显示为OFF状态 ?
问题2: 建立有较多文件的分区表时, 如果先执行 set global innodb_file_per_table = 1, 再执行以下语句
CREATE TABLE `test1` (id int, uname varchar(50)) engine=innodb default charset =utf8
partition by range(id)
(PARTITION p1 VALUES LESS THAN (1274976000) ENGINE = InnoDB,
PARTITION p2 VALUES LESS THAN (1275580800) ENGINE = InnoDB,
................
PARTITION p60 VALUES LESS THAN (1275580800) ENGINE = InnoDB)
总提示错误: Error 1005(HY000): Can't Create table 'test.test1' (errno:1)
说明:修改为myisam引擎后,上面语句运行正常 ;
不修改表引擎,但减少分区的个数后,执行也正常
问题1: 在my.cnf中的[mysqld]下添加了innodb_file_per_table=1,重启mysql后,执行以下语句
mysql> show variables like '%per_table%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_file_per_table | OFF |
+-----------------------+-------+
此参数怎么始终显示为OFF状态 ?
问题2: 建立有较多文件的分区表时, 如果先执行 set global innodb_file_per_table = 1, 再执行以下语句
CREATE TABLE `test1` (id int, uname varchar(50)) engine=innodb default charset =utf8
partition by range(id)
(PARTITION p1 VALUES LESS THAN (1274976000) ENGINE = InnoDB,
PARTITION p2 VALUES LESS THAN (1275580800) ENGINE = InnoDB,
................
PARTITION p60 VALUES LESS THAN (1275580800) ENGINE = InnoDB)
总提示错误: Error 1005(HY000): Can't Create table 'test.test1' (errno:1)
说明:修改为myisam引擎后,上面语句运行正常 ;
不修改表引擎,但减少分区的个数后,执行也正常
作者: pzlydg 发布时间: 2011-05-19
QUOTE:原帖由 pzlydg 于 2011-5-19 09:57 发表
使用centos5, mysql5.5.12版本:
问题1: 在my.cnf中的[mysqld]下添加了innodb_file_per_table=1,重启mysql后,执行以下语句
mysql> show variables like '%per_table%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_file_per_table | OFF |
+-----------------------+-------+
此参数怎么始终显示为OFF状态 ?
问题2: 建立有较多文件的分区表时, 如果先执行 set global innodb_file_per_table = 1, 再执行以下语句
CREATE TABLE `test1` (id int, uname varchar(50)) engine=innodb default charset =utf8
partition by range(id)
(PARTITION p1 VALUES LESS THAN (1274976000) ENGINE = InnoDB,
PARTITION p2 VALUES LESS THAN (1275580800) ENGINE = InnoDB,
................
PARTITION p60 VALUES LESS THAN (1275580800) ENGINE = InnoDB)
总提示错误: Error 1005(HY000): Can't Create table 'test.test1' (errno:1)
说明:修改为myisam引擎后,上面语句运行正常 ;
不修改表引擎,但减少分区的个数后,执行也正常
使用centos5, mysql5.5.12版本:
问题1: 在my.cnf中的[mysqld]下添加了innodb_file_per_table=1,重启mysql后,执行以下语句
mysql> show variables like '%per_table%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_file_per_table | OFF |
+-----------------------+-------+
此参数怎么始终显示为OFF状态 ?
问题2: 建立有较多文件的分区表时, 如果先执行 set global innodb_file_per_table = 1, 再执行以下语句
CREATE TABLE `test1` (id int, uname varchar(50)) engine=innodb default charset =utf8
partition by range(id)
(PARTITION p1 VALUES LESS THAN (1274976000) ENGINE = InnoDB,
PARTITION p2 VALUES LESS THAN (1275580800) ENGINE = InnoDB,
................
PARTITION p60 VALUES LESS THAN (1275580800) ENGINE = InnoDB)
总提示错误: Error 1005(HY000): Can't Create table 'test.test1' (errno:1)
说明:修改为myisam引擎后,上面语句运行正常 ;
不修改表引擎,但减少分区的个数后,执行也正常
是不是读的配置文件不对......另外errno1 是表明mysqld服务没有权限......
5.1.*是创建再多的分区也没有问题,只要不超过1024个...
作者: jinguanding 发布时间: 2011-05-19
读取的是/data/mysql/my.cnf
作者: pzlydg 发布时间: 2011-05-19
想问下:怎么查看当前读取的配置文件路径?
作者: pzlydg 发布时间: 2011-05-19
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28