MYSQL创建百万级测试数据表方法

方法一:使用java程序生成,一次insert。

注:user表的id为自动增长,所以insert可以不带id

public class MyThread extends Thread {
	public void run() {
		String url = "jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=utf8";
		String name = "com.mysql.jdbc.Driver";
		String user = "root";
		String password = "111";
		Connection conn = null;
		try {
			Class.forName(name);
			conn = DriverManager.getConnection(url, user, password);// 获取连接
			conn.setAutoCommit(false);// 关闭自动提交,不然conn.commit()运行到这句会报错
		} catch (ClassNotFoundException e1) {
			e1.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		Long begin = new Date().getTime();
		String prefix = "INSERT INTO user(name,age,sex) VALUES ";
		try {
			// 保存sql后缀
			StringBuffer suffix = new StringBuffer();
			// 设置事务为非自动提交
			conn.setAutoCommit(false);
			// 比起s
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
对于百万数据的模糊搜索,可以考虑使用MySQL的全文搜索功能或者创建索引进行优化。 1. 全文搜索:MySQL提供了全文搜索引擎,例如MyISAM和InnoDB引擎都支持全文索引。你可以使用MATCH AGAINST语句来执行全文搜索查询。全文搜索可以根据关键词匹配度进行排序,并支持模糊匹配、布尔搜索等功能。 但需要注意的是,全文搜索功能对于短查询词和高频词可能会有性能问题,并且默认情况下只支持英文和一些特定的语言。如果你需要处理其他语言或者更高的功能,可以考虑使用第三方全文搜索工具,如Elasticsearch或Solr。 2. 索引优化:如果你需要在已有的数据上进行模糊搜索,可以使用前缀索引或者创建组合索引来优化查询性能。前缀索引可以在创建索引时指定索引列的前缀长度,以减小索引大小和提高查询速度。组合索引则可以将多个列组合在一起创建索引,以便更好地支持多个查询条件的匹配。 但需要注意的是,使用前缀索引可能会导致查询结果不准确,因为匹配的字符范围被限制在了索引的前缀长度内。而组合索引需要根据实际查询条件进行设计,以避免创建过多的索引或者索引冗余。 综上所述,选择全文搜索还是索引优化取决于你的具体需求和数据特点。你可以根据实际情况进行测试和比较,选择最适合的方法来进行百万数据的模糊搜索。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值