mysql 資料庫分表的一種方法

2021-08-09 19:41:16 字數 1238 閱讀 9902

mysql資料庫分表有物理分庫,mysql自動分庫,分割槽mysql也是有的

這裡說的就是物理分庫,

首先寫乙個儲存過程

begin

declare i varchar(50);

declare var1 varchar(50);

declare message_ varchar(50) default 'message_';

set i=date_format(now(),'%y%m%d');

set var1=concat(message_,i);

select var1;

set @sql_create =concat('create table ',concat(message_,i),"(

`qq_id` varchar(64) character set utf8mb4 not null,

`pic_url` varchar(255) not null,

`lat` double not null,

`lng` double not null,

`location` varchar(255) character set utf8mb4 not null,

`datetime` datetime not null,

`like_count` int(10) unsigned zerofill not null,

`text` text character set utf8mb4,

`user_name` varchar(30) character set utf8mb4 default null,

primary key (`pic_url`)

) engine=innodb default charset=utf8;");

prepare sql_create from @sql_create;

execute sql_create;

end

這個貼上可以直接使用,然後在windows定時任務中寫乙個在晚上11點執行這個儲存過程的定時任務

這個就可以了,然後注意,id分表之後不能重複啊?

1.用uuid

2.用年月日時分秒納秒+序號,序號加不加都可以,我就不信納秒還一樣(當然加上更好)

我寫東西就不廢話了,那些分表分割槽概念請自己baidu

MySQL資料庫分表的3種方法

一,先說一下為什麼要分表 當一張的資料達到幾百萬時,你查詢一次所花的時間會變多,如果有聯合查詢的話,我想有可能會死在那兒了。分表的目的就在於此,減小資料庫的負擔,縮短查詢時間。根據個人經驗,mysql執行乙個sql的過程如下 1,接收到sql 2,把sql放到排隊佇列中 3,執行sql 4,返回執行...

orcacle資料庫導表的一種方法

1,連線資料庫a的主機host1,載入oracle的環境變數 source home oracle bash profile 2,host1命令列輸入 exp nis host1 nis profile dmp tables tb01,tb02 log log 3,把匯出的檔案copy到目標資料庫主...

C 連線Oracle資料庫的一種方法(詳細過程)

1.需要新增乙個system.data.oracleclient引用,這個檔案一般在c program files x86 reference assemblies microsoft framework netframework v4.0路徑下可以找到,v4.0不是絕對的,按照自己所需的版本選擇。...