麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Perl > 正文

使用perl實現拆分數據表(mysql)并遷移數據實例

2020-06-04 20:32:29
字體:
來源:轉載
供稿:網友

隨著業務量的增長,可能需要對表進行拆分來提高性能。

下面這個例子是將www.jb51.net的users表拆分成10個表ttlsa_user_0-ttlsa_user_9。

拆分遷移數據程序如下所示:

1.創建ttlsa_user_0-ttlsa_user_9表

代碼如下:
#!/usr/bin/perl
###################################
### author: www.jb51.net ###
### QQ群:232608061  ###
### E-mail:[email protected] ###
###################################

use DBI;

my $driver=”DBI:mysql”;
my $from_database=”ttlsa”;
my $from_user=”root”;
my $from_password=”123456″;
my $from_host=”localhost”;

$from_dbh=DBI->connect (“$driver:$from_database:$from_host;user=$from_user;password=$from_password”) or die “cannot connect: “. DBI->errstr;

for (0..9) {
$sql=”CREATE TABLE `ttlsa_user_$_` (
`uid` int(10) NOT NULL AUTO_INCREMENT,
`email` varchar(50) NOT NULL,
`passwd` varchar(40) NOT NULL,
`user_name` varchar(20) NOT NULL,
PRIMARY KEY (`uid`),
UNIQUE KEY `email` (`email`),
UNIQUE KEY `user_name` (`user_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT”;
$from_dbh->do($sql);
}
$from_dbh->disconnect();

2.遷移數據

代碼如下:
#!/usr/bin/perl
###################################
### author: www.jb51.net ###
### QQ群:232608061  ###
### E-mail:[email protected] ###
###################################

use DBI;

my $driver=”DBI:mysql”;
my $from_database=”ttlsa”;
my $from_user=”root”;
my $from_password=”123456″;
my $from_host=”localhost”;

$from_dbh=DBI->connect (“$driver:$from_database:$from_host;user=$from_user;password=$from_password”) or die “cannot connect: “. DBI->errstr;
$from_dbh->do(“set names ‘utf8′”);
$from_dbh->do(“set session autocommit=0″);
$from_dbh->do(“set session unique_checks=0″);

$max=600000;
$step=10000;
for ($i=1;$i $step_i=$i+$step;
$sql=”select * from ttlsa_users where user_id>=$i and user_id $sth=$from_dbh->prepare($sql);
$sth->execute;
@value=();
while ($row=$sth->fetchrow_hashref()) {
$uid=$row->{uid};
$email=$row->{email};
$passwd=$row->{passwd};
$user_name=$row->{user_name};
$key=substr($user_id,-1);
$value[$key].=”(‘$uid','$email','$passwd','$user_name'),”;

}
for (0..9) {
chop($value[$_]);
$sql=”insert into ttlsa_user_$_ (`uid`,`email`,`passwd`,`user_name`) values” . $value[$_];
$from_dbh->do(“$sql”);
}
}
$from_dbh->do(“set session autocommit=1″);
$from_dbh->do(“set session unique_checks=1″);
$sth->finish();
$from_dbh->disconnect();

3.附錄

如果沒有那么多數據量,可以隨意插入一些數據進行測試。下面提供一個插入數據的腳本。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鲁人人人鲁人人鲁精品 | 国产精品99久久久久久大便 | 在线成人免费网站 | 男女羞羞在线观看 | 精品国产91久久久 | 天堂成人一区二区三区 | 免费国产a | 久久久久国产成人免费精品免费 | 成人视屏网站 | 一区二区久久精品66国产精品 | 成人在线网站 | 久久精品视频一区二区 | 深夜精品福利 | 一级做受大片免费视频 | 亚州综合网 | 久久精品视频7 | 国产理论视频在线观看 | 日本aaa一级片 | 精品久久久久久久久久久久久 | 黄色网络免费看 | 99视频网| 日日操夜夜操视频 | 国产羞羞视频在线免费观看 | 日本成人高清视频 | 激情夜色 | 久久久噜噜噜久久熟有声小说 | 成人国产精品齐天大性 | 在线观看国产网站 | 精品国内视频 | 深夜免费视频 | 国产精品爱久久久久久久 | 羞羞视频免费观看网站 | 在线免费观看毛片 | 免费毛片播放 | 日韩一级片一区二区三区 | 欧美激情视频一区二区免费 | 午夜精品视频免费观看 | 中文字幕一区二区三区四区 | 美女网站黄在线观看 | 一区二区久久久久草草 | 91色综合综合热五月激情 |