#创建表DEPT

CREATE TABLE dept( /*部门表*/
deptno MEDIUMINT   UNSIGNED  NOT NULL  DEFAULT 0,
dname VARCHAR(20)  NOT NULL  DEFAULT "",
loc VARCHAR(13) NOT NULL DEFAULT ""
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ;

#创建表EMP雇员
CREATE TABLE emp
(empno  MEDIUMINT UNSIGNED  NOT NULL  DEFAULT 0,
ename VARCHAR(20) NOT NULL DEFAULT "",
job VARCHAR(9) NOT NULL DEFAULT "",
mgr MEDIUMINT UNSIGNED NOT NULL DEFAULT 0,
hiredate DATE NOT NULL,
sal DECIMAL(7,2)  NOT NULL,
comm DECIMAL(7,2) NOT NULL,
deptno MEDIUMINT UNSIGNED NOT NULL DEFAULT 0
)ENGINE=MyISAM DEFAULT CHARSET=utf8 ;

#工资级别表
CREATE TABLE salgrade
(
grade MEDIUMINT UNSIGNED NOT NULL DEFAULT 0,
losal DECIMAL(17,2)  NOT NULL,
hisal DECIMAL(17,2)  NOT NULL
)ENGINE=MyISAM DEFAULT CHARSET=utf8;

INSERT INTO salgrade VALUES (1,700,1200);
INSERT INTO salgrade VALUES (2,1201,1400);
INSERT INTO salgrade VALUES (3,1401,2000);
INSERT INTO salgrade VALUES (4,2001,3000);
INSERT INTO salgrade VALUES (5,3001,9999);

# 随机产生字符串
#定义一个新的命令结束符合
delimiter $$
#删除自定的函数
drop  function rand_string $$

#这里我创建了一个函数.

create function rand_string(n INT)
returns varchar(255)
begin
 declare chars_str varchar(100) default
   'abcdefghijklmnopqrstuvwxyzABCDEFJHIJKLMNOPQRSTUVWXYZ';
 declare return_str varchar(255) default '';
 declare i int default 0;
 while i < n do
   set return_str =concat(return_str,substring(chars_str,floor(1+rand()*52),1));
   set i = i + 1;
   end while;
  return return_str;
  end $$

delimiter ;
select rand_string(6);

# 随机产生部门编号
delimiter $$
drop  function rand_num $$

#这里我们又自定了一个函数
create function rand_num( )
returns int(5)
begin
 declare i int default 0;
 set i = floor(10+rand()*500);
return i;
  end $$

delimiter ;
select rand_num();

#******************************************
#向emp表中插入记录(海量的数据)

delimiter $$
drop procedure insert_emp $$

create procedure insert_emp(in start int(10),in max_num int(10))
begin
declare i int default 0;
 set autocommit = 0; 
 repeat
 set i = i + 1;
 insert into emp values ((start+i) ,rand_string(6),'SALESMAN',0001,curdate(),2000,400,rand_num());
  until i = max_num
 end repeat;
   commit;
 end $$

delimiter ;
#调用刚刚写好的函数, 1800000条记录,从100001号开始
call insert_emp(100001,1800000);

#**************************************************************
#  向dept表中插入记录

delimiter $$
drop procedure insert_dept $$

create procedure insert_dept(in start int(10),in max_num int(10))
begin
declare i int default 0;
 set autocommit = 0; 
 repeat
 set i = i + 1;
 insert into dept values ((start+i) ,rand_string(10),rand_string(8));
  until i = max_num
 end repeat;
   commit;
 end $$

delimiter ;
call insert_dept(100,10);

#------------------------------------------------
#向salgrade 表插入数据
delimiter $$
drop procedure insert_salgrade $$
create procedure insert_salgrade(in start int(10),in max_num int(10))
begin
declare i int default 0;
 set autocommit = 0;
 ALTER TABLE emp DISABLE KEYS; 
 repeat
 set i = i + 1;
 insert into salgrade values ((start+i) ,(start+i),(start+i));
  until i = max_num
 end repeat;
   commit;
 end $$
delimiter ;
#测试不需要了
#call insert_salgrade(10000,1000000);

#----------------------------------------------

mysql 压力测试脚本相关推荐

  1. mysql 雇员表脚本,mysql压力测试脚本实例_MySQL

    本文实例讲述了mysql压力测试的脚本,分享给大家供大家参考.具体如下: 创建表DEPT 代码如下: CREATE TABLE dept( /*部门表*/ deptno MEDIUMINT UNSIG ...

  2. mysql远程压力测试_mysql压力测试脚本实例

    本文实例讲述了mysql压力测试的脚本,分享给大家供大家参考.具体如下: 创建表dept create table dept( /*部门表*/ deptno mediumint   unsigned  ...

  3. mysql 5.5 压力测试,mysql 压力测试

    mysql 压力测试 sysbench支持的测试模式: 1.CPU运算性能 2.磁盘IO性能 3.调度程序性能 4.内存分配及传输速度 5.POSIX线程性能 6.数据库性能(OLTP基准测试) 目前 ...

  4. linux mysql 测试工具_LINUX系统下MySQL 压力测试工具super smack

    LINUX系统下MySQL 压力测试工具super smack 发布时间:2008-09-08 17:03:39   作者:佚名   我要评论 1. 源文件下载地址:http://vegan.net/ ...

  5. 老叶倡议:MySQL压力测试基准值

    通常,我们会出于以下几个目的对MySQL进行压力测试: 1.确认新的MySQL版本性能相比之前差异多大,比如从5.6变成5.7,或者从官方版本改成Percona分支版本: 2.确认新的服务器性能是否更 ...

  6. mysql压力测试教程_Mysqlslap MySQL压力测试工具 简单教程

    MySQL从5.1.4版开始带有一个压力测试工具mysqlslap,通过模拟多个并发客户端访问mysql来执行测试,使用起来非常的简单.通过mysqlslap –help可以获得可用的选项,这里列一些 ...

  7. mysql压力测试工具Mysqlslap

    mysql 性能测试工具:The MySQL Benchmark Suite(不支持多CPU而且不是压力工具) 压力测试工具: MySQL super-smack:需要找能连接外网的机器,能连接外网的 ...

  8. 使用sysbench对mysql压力测试

    sysbench是一个模块化的.跨平台.多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况.关于这个项目的详细介绍请看:https://github.com/akopytov/sy ...

  9. mysql 压力测试知乎_MySQL查看SQL语句执行效率和mysql几种性能测试的工具

    网络中整理,记录下,朋友们应该用得到! Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看 SQL 语句的执行效 果,可以帮 ...

最新文章

  1. 一种绕过Android P对非SDK接口限制的简单方法
  2. 客户端相关知识学习(一)之混合开发,为什么要在App中使用H5页面以及应用场景、注意事项...
  3. [css] 对比下px、em、rem有什么不同?
  4. LeetCode 20. Valid Parentheses(c++)
  5. (转)ElasticSearch教程——汇总篇
  6. 微信小程序 drawImage 问题
  7. PHPCMS 模板标签
  8. c# XML 有多个重复子节点操作
  9. wps 云服务器登录_WPS云服务使用协议
  10. PostgreSQL 15新版本特性解读(含直播问答、PPT资料汇总)
  11. 华三模拟器(防火墙)实现IPSEC穿越NAT实验
  12. Excel自动插入jpg图片或png图片 VBA 工具 模块
  13. java bean vo_关于JavaBean和vo的解释
  14. 软件缺陷(定义+表现形式+优先级+信息+产生原因),看完这篇文章就懂了
  15. SAP Local WebIDE Access denied
  16. 【最新】滤器完整性检测各国规定
  17. 什么是生成器?如何创建生成器
  18. 雷军:当CEO是因为被格式化了电脑
  19. Java开发失业,摆摊卖梨膏罐头!
  20. python 的fcntl模块

热门文章

  1. java负数右移_收入囊中篇---Java程序基础(二)
  2. 用java怎么开发图片标注工具_java 图片处理工具 测试
  3. java栈 迷宫_利用栈实现迷宫的求解
  4. mysql hang_mysql夯hang死堆栈采集工具
  5. linux 挂载分区inode,Linux中分区挂载和LABEL的指定
  6. Halcon:(3)铝板检测与角点坐标计算
  7. GitHub上共享的简单易用 TensorFlow 代码集
  8. 洛谷P2397 yyy loves Maths VI (mode) 摩尔投票
  9. P2396 yyy loves Maths VII 状压dp 变态卡常
  10. VS+Eigen+CUDA compile error: C2244 and MSB3721