shell脚本mysql分库分表库名从00开始16个库表名从0000开始每个库128张表共2048张表。hash数据写入示例
#!/bin/bash
待写入的数据
data="your_data_here"
计算库名和表名的hash值
db_hash=$(echo -n "$data" | sha256sum | awk '{print $1}' | cut -c1-2) table_hash=$(echo -n "$data" | sha256sum | awk '{print $1}' | cut -c3-6)
计算库名和表名
db_index=$(( 16#$db_hash )) table_index=$(( 16#$table_hash ))
拼接库名和表名
db_name=$(printf "%02d" $db_index) table_name=$(printf "%04d" $table_index)
连接到MySQL,并执行写入操作
mysql -u your_username -p your_password -e "USE $db_name; INSERT INTO $table_name (data) VALUES ('$data');"
原文地址: https://www.cveoy.top/t/topic/hOQr 著作权归作者所有。请勿转载和采集!