环境搭建及源码运行_java环境搭建_mysql安装
书到用时方恨少、觉知此时要躬行;拥有技术,成就未来,抖音视频教学地址:
1、介绍
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle旗下产品。MySQL是最流行的关系型数据库管理系统之一
1、源码中涉及到的表:mysql 表:订单、意见反馈、用户基础信息、商品、购物车等表
2、订单属于哪个用户下单,订单表会关联用户的userId
1)订单表:订单id,用户id 、下单时间
2)用户表:用户id,用户姓名、用户的昵称
3、例如:用户如何获取用户订单?
用户在登录的时候,会通过手机号和密码获取用户信息,用户信息包括用户的userId,通过userId找到用户的所有订单
2、下载 MySQL
前往 MySQL 的官方网站 (https://dev.mysql.com/downloads/mysql/) 并下载最新的 mysql 版本。选择 “MySQL Community Server” 并选择您的操作系统。在“Select Operating System” 下拉框中,选择Mac OS X,然后在“Select OS Version” 下拉框中选择您的系统版本。接下来,您会在页面上看到“Download”按钮。点击下载最新版本的 mysql,建议和我安装一样的版本




3、安装
点击下载好的安装包,注意,安装最后的时候,记得将临时密码复制出来
4、设置环境变量
在 Mac 上,您需要将 mysql 的 bin 目录添加到 PATH 环境变量中,这样您才能在终端窗口中直接访问 mysql 命令。
在终端窗口输入以下命令,将 mysql 的 bin 目录添加到 PATH 环境变量中:
export PATH=$PATH:/usr/local/mysql/bin
export PATH=$PATH:/usr/local/mysql/support-filesvim ~/.bash_profile 文件
输入i进入编辑模式,将文本复制粘贴,然后esc 退出编辑模式 然后输入shift + : 输入wq保存

在执行source .bash_profile 生效
5、启动 MySQL
在终端中输入以下命令启动 mysql 服务,有时候如果遇到报错
sudo -s 输入密码,用root用户启动,启动前杀死自动启动的mysql,重新启动一下就ok

重新启动

// 如果还是报错
ERROR! The server quit without updating PID file (/usr/local/mysql/data/jiadeMBP.lan.pid)
//执行一下两个命令
touch /usr/local/mysql/data/jiadeMBP.lan.pid
chmod -R 777 /usr/local/mysql/
6、重新设置root账户密码
重新设置root账户密码,方便后续java代码链接
优先关闭mysql

cd /usr/local/mysql/bin cd到mysql bin目录,然后启动mysql,跳过验证
sudo ./mysqld_safe --skip-grant-tables

鼠标移动到终端,然后 command+n ,打开另外一个终端,连接mysql,密码随便输入即可

然后执行更改密码UPDATE mysql.user SET authentication_string=PASSWORD("123456") WHERE User='root';

设置密码永不过期,alter user 'root'@'localhost'password expire never;

记得执行,FLUSH PRIVILEGES;

在原来的终端,control+z 结束当前命令行, 在输入mysql.server restart 重新启动mysql
在新的终端输入root 连接,密码111 报错,输入刚才我们改的密码123456,成功连接,代表我们修改密码成功了

7、创建数据库及表
表及数据,有源码的同学,本地启动后,后序会用到
mysql> CREATE DATABASE app_management;
选择app_management数据库
mysql> use app_management;
然后执行以下下面的创建语句
CREATE TABLE `product` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`product_name` varchar(50) NOT NULL DEFAULT '',
`product_type` tinyint(1) NOT NULL DEFAULT '1' COMMENT '1、小米手环 2、鞋子 3、 衣服 4、家装 5、家电',
`recommend` smallint(6) NOT NULL DEFAULT '1' COMMENT '是否推荐 0不推荐 1推荐',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`total_sales` int(11) NOT NULL DEFAULT '0',
`shop_id` int(11) NOT NULL DEFAULT '0' COMMENT '店铺id',
`product_desc` varchar(100) NOT NULL DEFAULT '',
`brand` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4;CREATE TABLE `product_car` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`number` int(11) NOT NULL DEFAULT '0' COMMENT '商品数量',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`product_parama_id` int(11) NOT NULL DEFAULT '0' COMMENT '商品参数id',
`user_id` int(11) NOT NULL DEFAULT '0' COMMENT '用户id',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4;CREATE TABLE `product_comment` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`head_Image` varchar(200) NOT NULL DEFAULT '' COMMENT '头像',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`nick_name` varchar(10) NOT NULL DEFAULT '' COMMENT '昵称',
`comment` varchar(30) NOT NULL DEFAULT '' COMMENT '评论',
`comment_stars` int(11) NOT NULL DEFAULT '0' COMMENT '评价几颗星',
`product_id` int(11) NOT NULL DEFAULT '0' COMMENT '商品id',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;CREATE TABLE `product_order` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`user_id` int(11) NOT NULL DEFAULT '0' COMMENT '用户id',
`product_user_receive_information_id` int(11) NOT NULL DEFAULT '0',
`order_status` int(11) NOT NULL DEFAULT '0' COMMENT '0 待支付 1 已支付 未发货 2 发货中 3 已发货 待收货 4 已收货 待评价 5 已评价 ',
`total_price` double(10,3) NOT NULL DEFAULT '0.000',
`reduce_price` double(5,3) NOT NULL DEFAULT '0.000' COMMENT '减免价格',
`expire_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`price` double(10,3) NOT NULL DEFAULT '0.000' COMMENT '价格',
PRIMARY KEY (`id`),
UNIQUE KEY `uq_user_id` (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8mb4;CREATE TABLE `product_order_parama` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`number` int(11) NOT NULL DEFAULT '0' COMMENT '商品数量',
`product_order_id` int(11) NOT NULL DEFAULT '0' COMMENT '商品id',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`product_parama_id` int(11) NOT NULL DEFAULT '0' COMMENT '商品参数id',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8mb4;CREATE TABLE `product_parama` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`product_id` int(11) NOT NULL DEFAULT '0' COMMENT '商品id',
`product_color` varchar(10) NOT NULL DEFAULT '' COMMENT '商品颜色',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`product_type` varchar(10) NOT NULL DEFAULT '',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`in_stock` int(11) NOT NULL DEFAULT '0' COMMENT '库存',
`price` int(11) NOT NULL DEFAULT '0',
`url` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4;CREATE TABLE `product_user_receive_information` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`user_name` varchar(10) NOT NULL DEFAULT '' COMMENT '收货人姓名',
`user_mobile` varchar(11) NOT NULL DEFAULT '' COMMENT '收货人手机号',
`user_address` varchar(50) NOT NULL DEFAULT '' COMMENT '收货人地址',
`user_id` int(11) NOT NULL DEFAULT '0' COMMENT '用户id',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8mb4;CREATE TABLE `shop` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`shop_name` varchar(10) NOT NULL DEFAULT '' COMMENT '店铺名称',
`create_user_id` int(11) NOT NULL DEFAULT '0' COMMENT '店铺创建者',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`delivery_address` varchar(30) NOT NULL DEFAULT '' COMMENT '发货地址',
`delivery_method` varchar(30) NOT NULL DEFAULT '' COMMENT '配送方式',
`shop_phone` varchar(11) NOT NULL DEFAULT '' COMMENT '店铺电话',
`remark` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
UNIQUE KEY `uniq_create_user_id` (`create_user_id`) USING BTREE COMMENT '店主'
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4;CREATE TABLE `suggestion` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`content` varchar(500) NOT NULL DEFAULT '',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;CREATE TABLE `user` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`mobile` char(11) NOT NULL DEFAULT '' COMMENT '手机号',
`nick_name` varchar(20) NOT NULL DEFAULT '' COMMENT '昵称',
`password` char(32) NOT NULL DEFAULT '',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`gender` varchar(11) NOT NULL DEFAULT '保密' COMMENT '性别',
`birthday` date DEFAULT NULL,
`area` varchar(100) NOT NULL DEFAULT '',
`signature` varchar(250) NOT NULL DEFAULT '',
`head_image` varchar(500) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `idx_mobile_app_id` (`mobile`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8mb4;
8、安装mysql工具
我这里安装的DBeaver,后面比较简单的 我就不在介绍了,安装软件,大家应该都会
下载mysql:https://www.bear20.com/pcmac/131/725963631.html
安装成功后,打开软件,并创建一个链接



能看到刚才创建的数据库及表,代表成功

相关文章:
环境搭建及源码运行_java环境搭建_mysql安装
书到用时方恨少、觉知此时要躬行;拥有技术,成就未来,抖音视频教学地址: 1、介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle旗下产品。MySQL是最…...
Android camera的metadata
一、实现 先看一下metadata内部是什么样子: 可以看出,metadata 内部是一块连续的内存空间。 其内存分布大致可概括为: 区域一 :存 camera_metadata_t 结构体定义,占用内存 96 Byte 区域二 :保留区&#x…...
ElasticSearch面试题
1.介绍下es的架构? es采用的是分布式的架构,es集群中会有多个结点,而结点的角色主要有下面几种。 协调结点: 请求路由能力,将请求内容将请求转发给对应的结点进行处理。 master结点: 结点管理ÿ…...
C++ 数据结构知识点合集-C/C++ 数组允许定义可存储相同类型数据项的变量-供大家学习研究参考
#include <iostream> #include <cstring>using namespace std;// 声明一个结构体类型 Books struct Books {char title[50];char author[50];char subject[100];int book_id; };int main( ) {Books Book1; // 定义结构体类型 Books 的变量 Book1Books …...
【机器学习】5分钟掌握机器学习算法线上部署方法
5分钟掌握机器学习算法线上部署方法 1. 三种情况2. 如何转换PMML,并封装PMML2.1 什么是PMML2.2 PMML的使用方法范例3. 各个算法工具的工程实践4. 只用Linux的Shell来调度模型的实现方法5. 注意事项参考资料本文介绍业务模型的上线流程。首先在训练模型的工具上,一般三个模型训…...
Vue3-21-组件-子组件给父组件发送事件
情景描述 【子组件】中有一个按钮,点击按钮,触发一个事件, 我们希望这个事件的处理逻辑是,给【父组件】发送一条消息过去, 从而实现 【子组件】给【父组件】通信的效果。这个问题的解决就是 “发送事件” 这个操作。 …...
[密码学]AES
advanced encryption standard,又名rijndael密码,为两位比利时数学家的名字组合。 分组为128bit,密钥为128/192/256bit可选,对应加密轮数10/12/14轮。 基本操作为四种: 字节代换(subBytes transformatio…...
CentOS 7 部署pure-ftp
文章目录 (1)简介(2)准备工作(3)更新系统(4)安装依赖环境(5)下载和解压pure-ftp源码包(6)编译和安装pure-ftp(7࿰…...
Vue2-动态组件案例
1.component介绍 说明: Type: string | ComponentDefinition | ComponentConstructor Explanation: String: 如果你传递一个字符串给 is,它会被视为组件的名称,用于动态地渲染不同类型的组件。这是一个在运行时动态切换组件类型的常见用例。…...
【源码】车牌检测+QT界面+附带数据库
目录 1、基本介绍2、基本环境3、核心代码3.1、车牌识别3.2、车牌定位3.3、车牌坐标矫正 4、界面展示4.1、主界面4.2、车牌检测4.3、查询功能 5、演示6、链接 1、基本介绍 本项目采用tensorflow,opencv,pyside6和pymql编写,pyside6用来编写UI界…...
实战1-python爬取安全客新闻
一般步骤:确定网站--搭建关系--发送请求--接受响应--筛选数据--保存本地 1.拿到网站首先要查看我们要爬取的目录是否被允许 一般网站都会议/robots.txt目录,告诉你哪些地址可爬,哪些不可爬,以安全客为例子 2. 首先测试在不登录的…...
光栅化渲染:可见性问题和深度缓冲区算法
在前面第二章中,我们了解到,在投影点(屏幕空间中的点)的第三个坐标中,我们存储原始顶点 z 坐标(相机空间中点的 z 坐标): 当一个像素与多个三角形重叠时,查找三角形表面上…...
docker入门小结
docker是什么?它有什么优势? 快速获取开箱即用的程序 docker使得所有的应用传输就像我们日常通过聊天工具文件传输一样,发送方将程序传输到超级码头而接收方也只需通过超级码头进行获取即可,就像一只鲸鱼拖着货物来回运输一样。…...
LLM Agent发展演进历史(观看metagpt视频笔记)
LLM相关的6篇重要的论文,其中4篇来自谷歌,2篇来自openai。技术路径演进大致是:SSL (Self-Supervised Learning) -> SFT (Supervised FineTune) IT (Instruction Tuning) -> RLHF。 word embedding的问题:新词如何处理&…...
Linux(操作系统)面经——part2
1、请你说说进程和线程的区别 1.进程是操作系统资源分配和调度的最小单位,实现操作系统内部的并发;线程是进程的子任务,cpu可以识别、执行的最小单位,实现程序内部的并发。 2.一个进程最少有一个线程或有多个,一个线程…...
Flink系列之:WITH clause
Flink系列之:WITH clause 适用流、批提供了一种编写辅助语句以在较大查询中使用的方法。这些语句通常称为公共表表达式 (CTE),可以被视为定义仅针对一个查询而存在的临时视图。 WITH 语句的语法为: WITH <with_item_definition> [ , …...
JMeter直连数据库
JMeter直连数据库 使用场景操作步骤 使用场景 用作请求的参数化 登录时需要的用户名,密码可以从数据库中查询获取 用作结果的断言 添加购物车下订单,检查接口返回的订单号,是否与数据库中生成的订单号一致 清理垃圾数据 添加商品后ÿ…...
Linux部署MySQL5.7和8.0版本 | CentOS和Ubuntu系统详细步骤安装
一、MySQL数据库管理系统安装部署【简单】 简介 MySQL数据库管理系统(后续简称MySQL),是一款知名的数据库系统,其特点是:轻量、简单、功能丰富。 MySQL数据库可谓是软件行业的明星产品,无论是后端开发、…...
STL中set和multiset容器的用法(轻松易懂~)
目录 1. 基本概念 2. 构造和赋值 3. 大小和交换 4. 插入 和 删除 5. 统计 和 查找 6. set容器的排序 1. 基本概念 set和multiset属于关联式容器,底层结构式二叉树,所有元素都会在插入时自动排序。 如果你对容器的概念,或是二叉树不太了…...
Codeforces Round 915 (Div. 2)
Constructive Problems(Problem - A - Codeforces) 题目大意:现在有一片城市被摧毁了,需要进行重建,当一个城市水平相邻和竖直相邻的位置都至少有一个城市的时候,该城市可以被重建。所有城市排成n行m列的矩…...
国防科技大学计算机基础课程笔记02信息编码
1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
IGP(Interior Gateway Protocol,内部网关协议)
IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...





