当前位置: 首页 > wzjs >正文

网站建设 更新 维护如何推广店铺呢

网站建设 更新 维护,如何推广店铺呢,图片设计师网站,微网站购物网站场景: 需要拿10w条数据测试数据库的性能优化,查看是否合理。之前有的项目数据量很小,后面遇到大的项目难免吃亏。遂决定进行此次测试。 使用环境: win10 使用工具: mysql workbench --mysql官网自带的IDE,可以用d…

场景

需要拿10w条数据测试数据库的性能优化,查看是否合理。之前有的项目数据量很小,后面遇到大的项目难免吃亏。遂决定进行此次测试。

使用环境:

win10

使用工具:

mysql workbench --mysql官网自带的IDE,可以用dbeaver等替换

powershell --同理,cmd也可以

deepseek --搜索报错

思路

此次会使用Python脚本test.py生成测试数据文件test_data.csv,然后使用导入文件命令导入mysql数据到mysql容器中。

【 相对insert单条输入和事务输入,文件导入效率更高】

使用步骤:

1. 安装python

win10 测试是否安装python3,powershell输入python, 

有会显示python版本,没有会自动跳出微软商店安装python

下图为输入后显示的版本:

2.放入python脚本

保存为test.py 【此处方便测试,我放在桌面位置,大家可以随便放】

import csv
import random
from datetime import datetime, timedelta
from faker import Faker# 初始化Faker库
fake = Faker('zh_CN')# 预定义的创建人和更新人列表
creators = ['张三', '李四', '王五', '赵六', '钱七', '孙八', '周九', '吴十']
updaters = creators + ['系统自动', '管理员', '自动任务']# 生成随机日期(过去5年内)
def random_date(start_date=None):if start_date is None:start_date = datetime.now() - timedelta(days=5*365)end_date = datetime.now()return start_date + timedelta(seconds=random.randint(0, int((end_date - start_date).total_seconds())))# 生成10万条测试数据
def generate_test_data(num_records=100000):data = []for i in range(num_records):# 生成创建日期(确保更新日期不早于创建日期)create_date = random_date()update_date = random_date(create_date)record = {'ID': i + 1,'姓名': fake.name(),'年龄': random.randint(1, 100),'创建日期': create_date.strftime('%Y-%m-%d %H:%M:%S'),'创建人': random.choice(creators),'更新日期': update_date.strftime('%Y-%m-%d %H:%M:%S'),'更新人': random.choice(updaters)}data.append(record)return data# 保存为CSV文件
def save_to_csv(data, filename='test_data.csv'):with open(filename, 'w', newline='', encoding='utf-8-sig') as csvfile:fieldnames = ['ID', '姓名', '年龄', '创建日期', '创建人', '更新日期', '更新人']writer = csv.DictWriter(csvfile, fieldnames=fieldnames)writer.writeheader()writer.writerows(data)print(f"数据已保存到 {filename}")# 生成并保存数据
test_data = generate_test_data(100000)
save_to_csv(test_data)

3.执行python脚本

python C:\Users\admin\Desktop\test.py --linux环境

python.exe .\test.py --win10环境

现在测试数据已经生成,

4. 打开mysqlworkbench

建表

CREATE TABLE `test_data` (`id` int NOT NULL AUTO_INCREMENT,`name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '姓名',`age` tinyint unsigned NOT NULL COMMENT '年龄',`create_time` datetime NOT NULL COMMENT '创建日期',`creator` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建人',`update_time` datetime NOT NULL COMMENT '更新日期',`updater` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '更新人',PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=100001 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='测试数据表'

4.1  点击配置

点击Advanced -> Others 里输入 OPT_LOCAL_INFILE=1

【此处不设置会报错:Error Code: 2068. LOAD DATA LOCAL INFILE file request rejected due to restrictions on access. 在 MySQL Workbench 中遇到 Error Code: 2068LOAD DATA LOCAL INFILE 被拒绝)是因为 MySQL 默认出于安全考虑禁用了客户端本地文件加载功能。

4.2 执行

在workbench里执行

LOAD DATA LOCAL INFILE 'C:/Users/admin/Desktop/test_data.csv'  
INTO TABLE test_data  FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n'IGNORE 1 ROWS (id, name, age, create_time, creator, update_time, updater)

脚本释义

执行成功:

5.查看数据

SELECT * FROM demo.test_data;
 

select count(*) from demo.test_data;

Done.

【完结撒花】

后续可以分析测试优化性能了。例如处理全表扫描索引扫描等等,后续看时间更新吧。。。

http://www.dtcms.com/wzjs/402671.html

相关文章:

  • 做电商需要投入多少钱seo模板建站
  • 国家为何要求所有网站均须备案百度信息流推广技巧
  • 昆明建网站公司商务网站如何推广
  • 个人网站备案方法交换神器
  • 慈溪网站建设哪家好成都网站排名 生客seo
  • 南通网站建设十年以上公司百度关键词搜索量查询
  • wordpress获取文章标签内容seo平台
  • 保山网站开发网络推广外包业务销售
  • 哪些网站用织梦默认模板seo流量排名工具
  • 政务网站建设标准哪里有做网络推广的
  • 网络推广模板网站搜狗seo排名软件
  • 东莞网站建设定制想要网站导航正式推广
  • 建设网站兼职网站推广找哪家公司好
  • 免费html网页模板网站网站域名费一年多少钱
  • 甘肃省住房建设厅网站百度信息流优化
  • 淮安营销型网站建设服务营销的七个要素
  • 亅新厦建设集团网站百度引流推广哪家好
  • wordpress文章灯箱seo综合查询是啥意思
  • 推广网站企业线上宣传有哪些好的方式方法
  • 可以做h5的网站有哪些高中同步测控优化设计答案
  • 帮企业做网站赚钱吗班级优化大师免费下载学生版
  • 学习网站开发软件网页制作的软件
  • 网站开发专员绩效考核搜索自媒体平台
  • 怎么才能建立网站营销公关
  • 东莞东城医院优化推广网站淄博
  • 大连外贸网站建设线上推广app
  • 拖拽做网站广东最新疫情
  • 单页网站推广百度搜索推广的五大优势
  • 网站内链外贸网站平台都有哪些 免费的
  • 做网站先用dw还是aspseo关键词快速获得排名