mirror of
https://github.com/MariaDB/server.git
synced 2025-09-03 20:43:11 +03:00
MDEV-19964 S3 replication support Added new configure options: s3_slave_ignore_updates "If the slave has shares same S3 storage as the master" s3_replicate_alter_as_create_select "When converting S3 table to local table, log all rows in binary log" This allows on to configure slaves to have the S3 storage shared or independent from the master. Other thing: Added new session variable '@@sql_if_exists' to force IF_EXIST to DDL's.
115 lines
2.9 KiB
Plaintext
115 lines
2.9 KiB
Plaintext
drop table if exists t1;
|
|
#
|
|
# Test simple create of s3 table
|
|
#
|
|
create or replace table t1 (a int, b int, key (a)) engine=aria;
|
|
insert into t1 select seq,seq+10 from seq_1_to_10000;
|
|
alter table t1 engine=s3;
|
|
show create table t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`a` int(11) DEFAULT NULL,
|
|
`b` int(11) DEFAULT NULL,
|
|
KEY `a` (`a`)
|
|
) ENGINE=S3 DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
|
select * from information_schema.tables where table_schema="database" and table_name="t1";;
|
|
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT MAX_INDEX_LENGTH TEMPORARY
|
|
def # t1 BASE TABLE S3 10 Page 10000 33 335872 # 122880 0 NULL # # # latin1_swedish_ci NULL page_checksum=1 9007199254732800 #
|
|
show table status like "t1";
|
|
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment Max_index_length Temporary
|
|
t1 S3 10 Page 10000 33 335872 # 122880 0 NULL # # # latin1_swedish_ci NULL page_checksum=1 # N
|
|
select * from t1 limit 10;
|
|
a b
|
|
1 11
|
|
2 12
|
|
3 13
|
|
4 14
|
|
5 15
|
|
6 16
|
|
7 17
|
|
8 18
|
|
9 19
|
|
10 20
|
|
select count(*) from t1;
|
|
count(*)
|
|
10000
|
|
select * from t1 where a between 10 and 20;
|
|
a b
|
|
10 20
|
|
11 21
|
|
12 22
|
|
13 23
|
|
14 24
|
|
15 25
|
|
16 26
|
|
17 27
|
|
18 28
|
|
19 29
|
|
20 30
|
|
explain select * from t1 where a between 10 and 20;
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 range a a 5 NULL # Using index condition
|
|
insert into t1 values (1,1);
|
|
ERROR HY000: Table 't1' is read only
|
|
update t1 set b=100 where a=1;
|
|
ERROR HY000: Table 't1' is read only
|
|
delete from t1 where a>10;
|
|
ERROR HY000: Table 't1' is read only
|
|
alter table t1 engine=aria;
|
|
show create table t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`a` int(11) DEFAULT NULL,
|
|
`b` int(11) DEFAULT NULL,
|
|
KEY `a` (`a`)
|
|
) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
|
|
select * from t1 limit 10;
|
|
a b
|
|
1 11
|
|
2 12
|
|
3 13
|
|
4 14
|
|
5 15
|
|
6 16
|
|
7 17
|
|
8 18
|
|
9 19
|
|
10 20
|
|
select count(*) from t1;
|
|
count(*)
|
|
10000
|
|
delete from t1 where a=1;
|
|
drop table t1;
|
|
#
|
|
# status
|
|
#
|
|
show variables like "s3%";
|
|
Variable_name Value
|
|
s3_access_key X
|
|
s3_block_size X
|
|
s3_bucket X
|
|
s3_debug X
|
|
s3_host_name X
|
|
s3_pagecache_age_threshold X
|
|
s3_pagecache_buffer_size X
|
|
s3_pagecache_division_limit X
|
|
s3_pagecache_file_hash_size X
|
|
s3_protocol_version X
|
|
s3_region X
|
|
s3_replicate_alter_as_create_select X
|
|
s3_secret_key X
|
|
s3_slave_ignore_updates X
|
|
show variables like "s3_slave%";
|
|
Variable_name Value
|
|
s3_slave_ignore_updates OFF
|
|
show variables like "s3_replicate%";
|
|
Variable_name Value
|
|
s3_replicate_alter_as_create_select ON
|
|
show status like "s3%";
|
|
Variable_name Value
|
|
S3_pagecache_blocks_not_flushed X
|
|
S3_pagecache_blocks_unused X
|
|
S3_pagecache_blocks_used X
|
|
S3_pagecache_read_requests X
|
|
S3_pagecache_reads X
|