datafaker生成测试数据插入mysql
原文文档:https://blog.csdn.net/A15517340610/article/details/105623103/
在看本文之前一定要看原文文档,要不然很多步骤不太清楚。
本人根据文档,经过自己的安装添加了一些步骤,希望本人踩过的坑可以帮助到你们~
话不多说,直接开整~
安装环境:
- Python (2.7.14)
此版本使用的是2.7版本的Python (2.7.14),我是自己安装python版本,centos自带的python好像缺少模块(例如:setuptools、pip等) - datafaker (github下载的zip包datafaker-master.zip)下载地址https://github.com/gangly/datafaker
前提说明
本人刚开始使用的pip模式的安装,发现一直少东西,然后就源码整了。但是关于pip和setuptools给你们一些看过的文档参考:
安装流程
- 安装python
参考文档:https://www.cnblogs.com/xiaowenshu/p/10239834.html - 安装datafaker
- 下载源码包,将datafaker-master.zip解压
- unzip datafaker-master.zip
- 进入到 datafaker-master文件夹中
- cd /software/datafaker-master
- 安装
- python setup.py install
安装 MySQL-python-1.2.5.zip
我安装的是MySQL-python-1.2.5,
安装文档:https://blog.csdn.net/weixin_29290259/article/details/113294040
- 步骤:
- unzip MySQL-python-1.2.5.zip
- cd MySQL-python-1.2.5/
- python setup.py build
- 在第三步遇到了一个问题,在setup.py安装脚本中,找不到指定的mysql_config.path的位置。解决办法如下:
- 将下载的MySQL-python-1.2.5的文件解压,然后打开编辑器编辑setup_posix,其中有一行mysql_config.path = “mysql_config”,改为mysql_config.path = “/usr/local/Cellar/mysql-connector-c/6.1.11/bin/mysql_config” 这里注意了,/usr/local/Cellar/mysql-connector-c/6.1.11/bin/mysql_config是我的mysql的安装地址。也就是说安装之前需要先安装mysql,只需要去官网下载就行了。(只适用python2,python3 请用whl安装【https://pypi.org/project/mysqlclient/#files】)
- 此处又遇到个问题,因为我是下载的mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar,这种文件方式的安装 安装文档:https://blog.csdn.net/qq_23123177/article/details/82759057
这种rpm的方式安装没有mysql_config文件,经过百度,解决办法:https://blog.csdn.net/weixin_36522099/article/details/107965842
此处操作后就可以有mysql_config文件了,将文件的位置配置在mysql_config这个文件中,就可以继续执行了 - python setup.py install
到此MySQL-python-1.2.5安装完毕!
- 执行datafaker --version查看版本
此处的datafaker –-version 我在bin目录下执行未成功,然后我是将bin目录下的datafaker添加了执行权限 chmod 777 datafaker,在执行datafaker –-version是成功了的(不知道对不对,个人见解)
在mysql中创建学生表
create table stu (id int unsigned auto_increment primary key COMMENT '自增id',name varchar(20) not null comment '学生名字',school varchar(20) not null comment '学校名字',nickname varchar(20) not null comment '学生小名',age int not null comment '学生年龄',class_num int not null comment '班级人数',score decimal(4,2) not null comment '成绩',phone bigint not null comment '电话号码',email varchar(64) comment '家庭网络邮箱',ip varchar(32) comment 'IP地址',address text comment '家庭地址' ) engine=InnoDB default charset=utf8;
编写元数据meta.txt
- 编写元数据meta.txt,这是个学生表描述。 其中meta.txt文件内容为:
id||int||自增id[:inc(id,1)]
name||varchar(20)||学生名字
school||varchar(20)||学校名字[:enum(file://names.txt)]
nickname||varchar(20)||学生小名[:enum(鬼泣, 高小王子, 歌神, 逗比)]
age||int||学生年龄[:age]
class_num||int||班级人数[:int(10, 100)]
score||decimal(4,2)||成绩[:decimal(4,2,1)]
phone||bigint||电话号码[:phone_number]
email||varchar(64)||家庭网络邮箱[:email]
ip||varchar(32)||IP地址[:ipv4]
address||text||家庭地址[:address]
- 编写元数据meta.txt,这是个学生表描述。 其中meta.txt文件内容为:
执行命令生成数据
在bin目录下执行
datafaker rdb mysql+mysqldb://root:root@localhost:3600/test?charset=utf8 stu 10 --outprint – meta meta.txt --outspliter ,
命令时,发现找不到meta.txt的位置,此处可以指定meta.txt位置zai bin目录下执行,也可以添加软链接,在meta.txt所在的目录下执行(我采用的是这种方式),命令:
ln -s /software/datafaker-master/bin/datafaker /usr/bin/datafaker
然后就可以在任意位置执行了
执行之后发现一个报错Can’t connect to MySQL server on ‘...’(10060)
导致此处错误的原因有很多,具体参考文档:
https://www.cnblogs.com/mmzs/p/9201558.html我此处是因为防火墙没有关闭
接着又出现了个问题:Access denied for user ‘root’@‘localhost’ (using password: YES)
此处我修改了mysql的配置my.cnf文件,直接跳过了密码验证
[root@localhost ~]# cp /usr/share/mysql/my-default.cnf /etc/my.cnf
[root@localhost ~]#vim /etc/my.cnf
[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程
保存并退出 :wq
重启Mysql服务
[root@localhost ~]# service mysql restart
之后就可以执行插入数据库成功了
结尾
因为写作匆忙,很多地方都是不确定,有什么错误的地方希望大神指教。后续有时间在回来修改!感谢观看。
datafaker生成测试数据插入mysql相关推荐
- mysql重新创建测试对象的SQL_MySQL_Sql_打怪升级_进阶篇_测试: SQL随机生成测试数据...
1.随机生成测试数据 目标:创建一张表,插入随机的行数,生成测试所需的数据. 2.测试所需环境准备 库名:userdatabase 表名:test_user_table 字段 需求 uname 6字符 ...
- mysql随机生成数据并插入_python生成随机数据插入mysql
import random as r import pymysql first=('张','王','李','赵','金','艾','单','龚','钱','周','吴','郑','孔','曺','严' ...
- navicat/dataGrip in IDEA/vscode/搭建mysql学习环境/beginner利用小皮控制面板(phpStudy)来快速搭建mysql的运行环境/生成测试数据并填充到表
文章目录 navicat dataGrip (database plugin of IDEA) IDEA (Ultimate ) plugin for database 基本使用 sql consol ...
- mysql 测试数据的脚本_Mysql脚本 生成测试数据
Mysql脚本 生成测试数据 使用: ./xie.sh -uroot -p'123456' #!/bin/bash #混合测试数据库脚本 #将创建一个single数据库,其中创建一个s1表 #如果数据 ...
- python随机数据库_Python实现生成随机数据插入mysql数据库的方法
本文实例讲述了Python实现生成随机数据插入mysql数据库的方法.分享给大家供大家参考,具体如下: 运行结果: 实现代码: import random as r import pymysql fi ...
- 如何使用TPC-DS生成测试数据并导入MySQL
测试环境 centos7 mysql搭建指南可参考:https://lrting.top/backend/2111/ 安装依赖: yum install gcc make flex bison bya ...
- DataFactory快速生成测试数据
1.DataFactory配置连接MySQL 1)下载安装myodbc32驱动 2)DataFactory-->New-->ODBC-->DBC Administrator--> ...
- mysql多重主键错误,老师,jd_spider中数据插入Mysql时一直显示主键错误,求助~
老师,jd_spider中数据插入Mysql时一直显示主键错误,求助~ 而且peewee会自动生成一个goods表的主键 万分感谢! 建立表的代码如下 from peewee import * db ...
- PostgreSQL生成测试数据
创建测试表 CREATE TABLE test (id integer,test integer ) WITH (OIDS=FALSE ); ALTER TABLE testOWNER TO post ...
最新文章
- DRO:SFM任务中的深度循环优化器(阿里巴巴AI Lab)
- 636 起投资事件,吸金 574 亿
- servlet实现文件上传,预览,下载和删除
- Python机器学习:SVM003Soft Margin和SVM(线性)的正则化
- 人类与AI结合的最佳形态是什么样?
- HDU 3507 Print Article(单调队列)
- python删除指定字符_python删除字符串中指定字符的方法
- Windows中ElasticSearch的备份和还原
- pip卸载pillow时的报错解决
- 科大讯飞测试开发工程师面试
- Pytorch 实现手写数字识别
- python_lintcode_52翻转字符串_128哈希函数
- 懒羊羊的作业:看过国产动画片的同学都知道,懒羊羊是一只非常懒的羊,整天除了吃就是睡,根本没有时间做作业。明天就是周一了,村长慢羊羊留的作业:把 n 个整数从大到小排序,它还没开始写...
- C/C++实现百度API GET请求
- uni-app小程序答题功能开发(左右滑动,判断,填空,问答,答题卡,纠错,做题倒计时等)
- 【Pandas分组聚合】 groupby()、agg() 方法的使用
- HCIP第十三天笔记
- mysql经典问题四表查询(教师,学生,成绩,课程表)
- 微信小程序支付SDK集成springboot
- 小心,你的账号密码可能在 GitHub 上裸奔!