2、MySQL如果使用InnoDB存储引擎,MySQL数据库文件类型就包括.frm、ibdata1、.ibd,存放位置有两个,
.frm文件默认存放位置是C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.1\data, ibdata1、.ibd文件默认存放位置是MySQL安装目录下的data文件夹
INNODB引擎只支持DATA DIRECTORY,不支持INDEX DIRECTORY, 另外 目录要空目录权限归属mysql 组mysql 用户,命令
mkdir /data
chown mysql:mysql /data
主键必须包含分区字段,PRIMARY KEY (id,store_id)
CREATE TABLE orders_list2 (
id INT AUTO_INCREMENT,
customer_surname VARCHAR(30),
store_id INT,
salesperson_id INT,
order_date DATE,
note VARCHAR(500),
PRIMARY KEY (id,store_id),
INDEX idx (id)
) ENGINE = INNODB
PARTITION BY LIST(store_id) (
PARTITION p1
VALUES IN (1, 3, 4, 17)
DATA DIRECTORY = '/data/p1',
PARTITION p2
VALUES IN (2, 12, 14)
DATA DIRECTORY = '/data/p2',
PARTITION p3
VALUES IN (6, 8, 20)
DATA DIRECTORY = '/data/p3',
PARTITION p4
VALUES IN (5, 7, 9, 11, 16)
DATA DIRECTORY = '/data/p4',
PARTITION p5
VALUES IN (10, 13, 15, 18)
DATA DIRECTORY = '/data/p5'
)
分区表扩充
ALTER TABLE orders_list2 ADD PARTITION (PARTITION p6 VALUES IN (21,22,23)
DATA DIRECTORY = '/var/lib/mysql/monitor/orders/p6'
子分区
CREATE TABLE tb_sub_dir (id INT, purchased DATE)
ENGINE='MYISAM'
PARTITION BY RANGE( YEAR(purchased) )
SUBPARTITION BY HASH( TO_DAYS(purchased) ) (
PARTITION p0 VALUES LESS THAN (1990)
(
SUBPARTITION s0
DATA DIRECTORY = '/data/data_sub1'
INDEX DIRECTORY = '/data/idx_sub1',
SUBPARTITION s1
DATA DIRECTORY = '/data/data_sub1'
INDEX DIRECTORY = '/data/idx_sub1'
),
PARTITION p1 VALUES LESS THAN (2000)
(
SUBPARTITION s2
DATA DIRECTORY = '/data/data_sub2'
INDEX DIRECTORY = '/data/idx_sub2',
SUBPARTITION s3
DATA DIRECTORY = '/data/data_sub2'
INDEX DIRECTORY = '/data/idx_sub2'
),
PARTITION p2 VALUES LESS THAN MAXVALUE
(
SUBPARTITION s4
DATA DIRECTORY = '/data/data_sub3'
INDEX DIRECTORY = '/data/idx_sub3',
SUBPARTITION s5
DATA DIRECTORY = '/data/data_sub3'
INDEX DIRECTORY = '/data/idx_sub3'
)
)
日期字段区分
CREATE TABLE employees1 (
id INT NOT NULL,
fname VARCHAR(30),
lname VARCHAR(30),
hired DATE NOT NULL DEFAULT '1970-01-01',
separated DATE NOT NULL DEFAULT '9999-12-31',
job_code INT,
store_id INT
)
PARTITION BY RANGE ( YEAR(separated) ) (
PARTITION p0 VALUES LESS THAN (1991),
PARTITION p1 VALUES LESS THAN (1996),
PARTITION p2 VALUES LESS THAN (2001),
PARTITION p3 VALUES LESS THAN MAXVALUE
)
mysql数据库在系统上是以一个文件夹的形式出现的,你创建了ac数据库,那么在磁盘上就会出现ac的目录,而ac数据库的全局配置则是ac文件夹中的db.opt文件来管理。
mysql的
数据文件
在datadir下,你在数据库中执行
show
variables
like
'%datadir%'就会显示
数据库文件
的路径,你可以找到ac文件夹。
1.
在
MySQL
客户端键入如下命令:
show
global
variables
like
"%datadir%"
2.
MySQL
的数据文件就存放在Data目录。
扩展资料
给定mysql_stmt_init()返回的语句句柄,准备字符串查询指向的SQL语句,并返回状态值。字符串长度应由"length"参量给出。字符串必须包含1条SQL语句。不应为语句添加终结用分号('')或\g。
通过将问号字符"?"嵌入到SQL字符串的恰当位置,应用程序可包含SQL语句中的一个或多个参数标记符。
标记符仅在SQL语句中的特定位置时才是合法的。例如,它可以在INSERT语句的VALUES()列表中(为行指定列值),或与WHERE子句中某列的比较部分(用以指定比较值)。但是,对于ID(例如表名或列名),不允许使用它们,不允许指定二进制 *** 作符(如等于号"=")的 *** 作数。后一个限制是有必要的,原因在于,无法确定参数类型。
一般而言,参数仅在DML(数据 *** 作语言)语句中才是合法的,在DDL(数据定义语言)语句中不合法。执行语句之前,必须使用mysql_stmt_bind_param(),将参数标记符与应用程序变量绑定在一起。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)