建立所有資料庫 呼叫:call create_databases('znke_z_log_', 0, 128);
引數說明:
1、要建立的資料庫字首
2、目標資料庫字尾最小數
3、目標資料庫字尾最大數(資料庫總數量)
create procedure `create_databases`(in db_pre varchar(20),in min_num int,in max_num int)
begin
declare i int;
declare db_name varchar(20);
declare sql_text varchar(2000);
set i=min_num;
set db_name='';
set sql_text='';
while i刪除所有資料庫 呼叫:call delete_databases('znke_z_log_', 0, 60,3);
引數說明:
要刪除的資料庫字首
目標資料庫字尾最小數
目標資料庫字尾最大數(資料庫總數量)
目標資料庫數字的位數
create procedure `delete_databases`(in db_pre varchar(20),in min_num int,in max_num int, in size int)
begin
declare i int;
declare db_name varchar(20);
declare sql_text varchar(2000);
set i=min_num;
set db_name='';
set sql_text='';
while i建立所有資料庫中的表.呼叫:call create_tables_of_databases('znke_z_log_', 'log' ,'znke_z_log.log' ,0 , 128);
引數說明:
1、目標資料庫的字首
2、要建立到目標資料庫中的表名稱
3、源資料庫名稱.源表名稱(原理從已建立的庫中複製,所以先要在源資料庫中建立好設計好的表結構)
4、目標資料庫字尾最小數
5、目標資料庫字尾最大數(資料庫總數量)
create procedure `create_tables_of_databases`(in db_pre varchar(20),in table_name varchar(20),in source_db_and_tablename varchar(30),in min_num int,in max_num int)
begin
declare i int;
declare db_name varchar(20);
declare sql_text varchar(2000);
set i=min_num;
set db_name='';
set sql_text='';
while i刪除所有資料庫中的表呼叫:call delete_tables_of_databases('znke_z_log_', 'log' ,0 , 128, 3);
引數說明:
目標資料庫的字首
要建立到目標資料庫中的表名稱
目標資料庫字尾最小數
目標資料庫字尾最大數(資料庫總數量)
目標資料庫數字的位數
create procedure `delete_tables_of_databases`(in db_pre varchar(20),in table_name varchar(20),in min_num int,in max_num int, in size int)
begin
declare i int;
declare db_name varchar(20);
declare sql_text varchar(2000);
set i=min_num;
set db_name='';
set sql_text='';
while i建立資料庫中所有分表(單庫多表 分片模式)呼叫:call create_tables('test', 'user_', 0 ,128);
引數說明:
1、目標資料庫(在該資料庫中建立很多分表)
2、要建立到目標資料庫中的表字首
3、目標資料庫字尾最小數
4、目標資料庫字尾最大數(資料庫總數量)
create procedure `create_tables`(in db_name varchar(20),in table_pre varchar(20), in min_num int,in max_num int)
begin
declare i int;
declare table_name varchar(20);
declare sql_text varchar(2000);
set i=min_num;
set table_name='';
set sql_text='';
while i刪除資料庫中所有分表(單庫多表 分片模式)呼叫:call delete_tables('test', 'user_', 0 ,128, 3);
引數說明:
目標資料庫(在該資料庫中建立很多分表)
要建立到目標資料庫中的表字首
目標資料庫字尾最小數
目標資料庫字尾最大數(資料庫總數量)
目標資料庫數字的位數
create procedure `delete_tables`(in db_name varchar(20),in table_pre varchar(20), in min_num int,in max_num int, in size int)
begin
declare i int;
declare table_name varchar(20);
declare sql_text varchar(2000);
set i=min_num;
set table_name='';
set sql_text='';
while i引數說明:
1、目標資料庫
2、目標資料庫中的表字首
create procedure drop_db_table(
db_name varchar(50), # 資料庫名稱
tb_prefix varchar(150) # 表字首
)begin
declare done int default 0; #游標的標誌位
declare a varchar(260);
declare cur1 cursor for select table_name from information_schema.tables where table_schema=db_name and table_name like concat(tb_prefix, '%');
declare continue handler for sqlstate '02000' set done = 1;
open cur1;
repeat
fetch cur1 into a;
if not done then
set @e=concat('drop table ',db_name,'.',a); # 拼刪除命令
prepare stmt1 from @e;
execute stmt1; # 執行命令
deallocate prepare stmt1; #釋放物件
end if;
until done end repeat;
close cur1;
end;
引數說明:
目標資料庫中的表字首
目標資料庫字尾最大數(資料庫總數量)
目標資料庫數字的位數
drop procedure if exists `merage_branch_table`;
create procedure `merage_branch_table`(
in p_table_name varchar(200),
in p_branch_size int,
in p_lpad int
)begin
declare m_begin_row int default 0;
set @m_merage_sql = '';
while m_begin_rowif(m_begin_row=p_branch_size-1)
then set @m_merage_sql = concat(@m_merage_sql, 'select * from ', p_table_name, '_', lpad(m_begin_row, p_lpad, 0));
else set @m_merage_sql = concat(@m_merage_sql, 'select * from ', p_table_name, '_', lpad(m_begin_row, p_lpad, 0),' union all ');
end if;
set m_begin_row = m_begin_row+1;
end while;
prepare main_stmt from @m_merage_sql;
execute main_stmt;
end;
儲存過程建立多張表
delimiter create procedure score p begin declare i int declare table name varchar 20 declare table pre varchar 20 declare sql text varchar 2000 set i ...
mysql 儲存過程建立多個表
要建立64個表,聽到這一需求,必然要用儲存過程。直接上 delimiter use table drop procedure if exists p create definer root localhost procedure p begin declare i int declare table...
Logstash配置多張表和多個資料來源
配置多個資料來源和不同的表訪問多個配置 解決問題 資料已經匯入完成 logstash還一直迴圈匯入資料 定時器設定時間有點短 同步資料兩種方案 方案一 每一次同步都是從頭同步的 1.clean run true就好了 2.schedule 根據你的業務需求看定多長時間比較合適 要是想使用每分鐘執行一...