MySQL 是常用的业务数据库,这里不再过多解释。直接安装,作为大数据需要同步的业务数据源。
安装
- 从 MySQL 官网下载。https://downloads.mysql.com/archives/community/
- 或者从上传资源下载。
- 虚拟机则需要删除 Mysql
rpm -qa | grep -i -E mysql\|mariadb | xargs -n1 sudo rpm -e --nodeps
- 如果是阿里云,则执行下面步骤
- 卸载MySQL依赖
sudo yum remove mysql-libs
- 下载安装依赖:
sudo yum -y install libaio sudo yum -y install autoconf
- 卸载MySQL依赖
- 解压上传的安装包
unzip mysql-5.7.16.zip
- 安装 MySQL 依赖
sudo yum install libaio
sudo yum -y install autoconf
sudo rpm -ivh 01_mysql-community-common-5.7.16-1.el7.x86_64.rpm
sudo rpm -ivh 02_mysql-community-libs-5.7.16-1.el7.x86_64.rpm
sudo rpm -ivh 03_mysql-community-libs-compat-5.7.16-1.el7.x86_64.rpm
- 安装MySQL-client
sudo rpm -ivh 04_mysql-community-client-5.7.16-1.el7.x86_64.rpm
- MySQL-server
sudo rpm -ivh 05_mysql-community-server-5.7.16-1.el7.x86_64.rpm
- 启动 MySQL
sudo systemctl start mysqld
- 查看MySQL 密码
sudo cat /var/log/mysqld.log | grep password
配置 MySQL
此配置可以使root 用户 + 密码,在任何主机上都能登录MySQL数据库。
- 用刚刚的密码登录MySQL。
mysql -uroot -p
- 进入MySQL库
mysql> use mysql
- 查询 user 表
mysql> select user, host from user;
- 修改root 用户为所有 host 可以登录
mysql> update user set host="%" where user="root";
- 刷新
mysql> flush privileges;
- 用工具远程连接登录,我采用的是 VS Code 的 MySQL 插件登录
配置业务数据
- 创建数据库
CREATE DATABASE gmall
CHARACTER SET utf8
COLLATE utf8_general_ci;
- 创建 table。从资源中下载gmall.sql进行执行,执行完成后如下图所示。
- 生成业务数据
- 在hadoop101的/opt/module/目录下创建db_log文件夹
mkdir /opt/module/db_log
- 把gmall2020-mock-db-2021-11-14.jar和application.properties上传到hadoop102的/opt/module/db_log路径上。
- 根据需求修改application.properties相关配置
logging.level.root=info spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://hadoop101:3306/gmall?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8 spring.datasource.username=root spring.datasource.password=<your password> logging.pattern.console=%m%n mybatis-plus.global-config.db-config.field-strategy=not_null #业务日期 mock.date=2020-06-14 #是否重置 注意:第一次执行必须设置为1,后续不需要重置不用设置为1 mock.clear=1 #是否重置用户 注意:第一次执行必须设置为1,后续不需要重置不用设置为1 mock.clear.user=1 #生成新用户数量 mock.user.count=100 #男性比例 mock.user.male-rate=20 #用户数据变化概率 mock.user.update-rate:20 #收藏取消比例 mock.favor.cancel-rate=10 #收藏数量 mock.favor.count=100 #每个用户添加购物车的概率 mock.cart.user-rate=50 #每次每个用户最多添加多少种商品进购物车 mock.cart.max-sku-count=8 #每个商品最多买几个 mock.cart.max-sku-num=3 #购物车来源 用户查询,商品推广,智能推荐, 促销活动 mock.cart.source-type-rate=60:20:10:10 #用户下单比例 mock.order.user-rate=50 #用户从购物中购买商品比例 mock.order.sku-rate=50 #是否参加活动 mock.order.join-activity=1 #是否使用购物券 mock.order.use-coupon=1 #购物券领取人数 mock.coupon.user-count=100 #支付比例 mock.payment.rate=70 #支付方式 支付宝:微信 :银联 mock.payment.payment-type=30:60:10 #评价比例 好:中:差:自动 mock.comment.appraise-rate=30:10:10:50 #退款原因比例:质量问题 商品描述与实际描述不一致 缺货 号码不合适 拍错 不想买了 其他 mock.refund.reason-rate=30:10:20:5:15:5:5 ``` - 执行命令,生成 2020-06-14 的数据`java -jar gmall2020-mock-db-2021-11-14.jar` - 查看数据库中是否有需要的数据
- 在hadoop101的/opt/module/目录下创建db_log文件夹