egg.js + mysql + windows 踩坑全纪录

2023-10-31

资料: egg.js文档(https://www.eggjs.org/zh-CN/intro/quickstart
背景:前面的都很简单,按照官方文档配置即可,全部调通以后,开始接触数据库mysql
因为米有后台开发背景,所以需要从头开始。
步骤:

一、安装mysql

1、下载mysql,选择mysql的原因也很简单,文档说的(https://www.eggjs.org/zh-CN/tutorials/mysql)。

下载地址:https://dev.mysql.com/downloads/mysql/
mysql下载
tips:不想登录或者注册的话,点击如下
下载按钮

2、下载后配置

解压缩文件
文件夹放到你想要放置的位置
mysql文件放置位置
新增my.ini文件,内容如下:
tips:basedir=D:\apps\mysql-8.0.33-winx64 这个需要配置成自己的路径

[client]
# 设置mysql客户端默认字符集
default-character-set=utf8

[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\\apps\\mysql-8.0.33-winx64
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
# datadir=D:\\MySQL\\sqldata
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

3、设置用户名密码

cmd + 管理员运行,进入到刚刚bin文件所在的文件夹
tips:切记要记住初始密码,找个地方保存起来

D:\apps\mysql-8.0.33-winx64\bin
// 运行,获得默认密码
mysqld --initialize --console
// 安装mysql服务并启动   
mysqld --install mysql
// 登录
mysql -h localhost -P 3306 -u root -p
// 会显示密码的界面,输入刚刚保存的密码,就登录成功了
******
// 修改密码,旧密码太难记了,修改一下比较好
ALTER USER 'root'@'localhost' IDENTIFIED BY '123mysql';

至此,安装成功,退出后重新登录,显示ok的

二、安装图形界面

因为人太菜,sql语言写的不行,又想快点搞,所以下载了一个程序(HeidiSQL)。
在这里插入图片描述
这个没啥说的,新建数据库,输入账号密码,密码就是刚刚改的那个
在这里插入图片描述
然后点击上图的 打开 按钮,就是数据库的列表了,建你需要的表和字段
tips:新增字段和给字段赋值是俩tab,不要混了,字段赋值是在 数据 tab里面
在这里插入图片描述
然后数据库、表、字段就搞完了,后面就是把egg.js和这个数据库连起来

三、egg.js连接数据库

安装插件,开启插件,配置插件,这些文档都有,照着来就可以,配置完以后,运行报错(这个报错是这篇文章存在的意义,不然一路顺,就懒得记录下来了):

node.js连接mysql出现错误: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client

搜索原因,说是mysql的登录和egg-sql插件的登录方式不一致,需要改成一致
参照了很多文章,进行了多次密码修改,但是一直报错,类似文章(node.js连接mysql出现错误ER_NOT_SUPPORTED_AUTH_MODE Client does not support authentication protocol…
最后,直接登录不上去了,哪个密码都登录不上去了
分析可能是粘贴别人的代码,密码设置的时候有空格或者啥了,反正是登录不了了。

忘记密码的时候怎么重置数据库密码?

一篇救大命的文章(MySQL修改、忘记root密码(8.0版本))
1、首先终止MySQL服务

1、右键此电脑-管理-服务-MySQL
或者
2、以管理员身份打开cmd,执行:
net stop mysql

2、以管理员身份新开cmd,进入mysql安装的bin目录后执行:

mysqld --console --skip-grant-tables --shared-memory

此时,命令行框会处于持续运行状态:
3、保持上述的窗口(切记),再以管理员身份新开cmd,执行:

mysql -uroot -p

这时就已经绕过密码登录进入mysql了。
4、接下来修改root的密码为空

UPDATE mysql.user SET authentication_string='' WHERE user='root';

5、此时关闭所有命令行界面,正常开启MySQL服务后进行登录,无需密码即可进入成功。
此时进行修改密码操作:

use mysql 
ALTER user root@'localhost' identified by '123456';

密码修改成功,退出mysql,即可通过密码:123456登录.

神奇的事情是,当我重新修改完密码以后,我的egg.js项目可以运行了,不报权限的错误了,一切解决了

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

egg.js + mysql + windows 踩坑全纪录 的相关文章

  • 如何在Sequelize中设置查询超时?

    我想看看如何在 Sequelize 中设置查询的超时时间 我查看了 Sequelize 文档以获取一些信息 但我找不到我要找的东西 我发现的最接近的是 pools acquire 选项 但我不想设置传入连接的超时 而是设置正在进行的查询的超
  • MySQL Connector C/C API - 使用特殊字符进行查询

    我是一个 C 程序 我有一个接受域名参数的函数 void db domains query char name 使用 mysql query 我测试数据库中是否存在域名 如果不是这种情况 我插入新域名 char query 400 spri
  • 免费 PHP 登录库 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • MySQL连接字符集问题

    我在 Mac 上使用带有 MySQL 的 velosurf 没有任何编码问题 但是当我切换到 Linux 计算机时 从 velosurf 获得的值未正确编码 我发现这可能是默认连接字符集的问题 在 Mac 上我得到 mysql gt sho
  • PDO PHP 连接,致命错误

    我的连接类 firstcode php class DB functions public db function construct try db new PDO mysql localhost dbname xxx charset ut
  • INSERT..RETURNING 在 JOOQ 中不起作用

    我有一个 MariaDB 数据库 我正在尝试在表中插入一行users 它有一个生成的id我想在插入后得到它 我见过this http www jooq org doc 3 8 manual sql building sql statemen
  • 同一配置文件上的两个不同提供程序

    我在用着实体框架 6 1 0 I have 2 家提供者 MysqlClient 和 SQLServerCE 我需要创建2个不同的DBContext 这迫使我创造2个配置类因为mysql有一些不同的东西 但是当我初始化应用程序时 Datab
  • 映射 mysql 中同一个表的多个值

    您好 我必须使用另一个表中的值 id 获取文本值 表 1 包含值 ID 表 2 包含名称和值 ID 表 1 SEVERITY OCCURENCE DETECTABILITY 2 3 4 表 2 id name value 1 Very Hi
  • 在 MySQL 中存储表情符号的编码问题:如何使用 Prisma ORM 在 NodeJS 中定义字符排序规则?

    亲爱的 Nodejs 专家和数据库专家 我们在 MySQL 数据库中存储表情符号和其他特殊字符时遇到问题 我们使用 Prisma 得到一个错误 这是我们使用的 ORM 参数无法从排序规则 utf8 general ci 转换为 utf8mb
  • Mysql 时间匹配连接

    我有两个表cpuinfo和jobinfo 我想使用这两种数据创建报告 tabes CREATE TABLE cpuinfo id int 11 NOT NULL AUTO INCREMENT usagetime datetime DEFAU
  • 显示标准化数据

    跟进问题 添加 2 个不同表的总和 https stackoverflow com questions 39717541 adding sum from 2 different tables 我创建了3个表 members videos v
  • 不允许在 php 中连接到此 MariaDB 服务器

    我尝试在 php 中连接远程服务器数据库 但出现以下错误 Host xx xxx xx xx is not allowed to connect to this MariaDB server in 我的连接代码是这样的 servername
  • 从另一台计算机访问 MYSQL

    我想开发一个java桌面应用程序 我想在其中设置服务器 这意味着我在这里使用mysql db 该数据库将仅存储在一台电脑上 其余所有用户都可以访问该数据库 所以 我听说了mysql远程连接 其中尝试了一些事情 这些措施如下 我的电脑已连接w
  • MySQL 通过 current_timestamp 选择上个月的数据

    直到今天 当我使用 MySQL 并需要对日期 时间执行操作时 我使用带有 unix 时间戳的 int 列 没有出现任何问题 但今天在阅读了一些指南后 我决定默认使用 current timestamp 测试时间戳列 所以我感兴趣如何按列选择
  • 即使没有结果也返回一个值

    我有这种简单的查询 它返回给定 id 的非空整数字段 SELECT field1 FROM table WHERE id 123 LIMIT 1 问题是如果找不到 id 结果集就是空的 我需要查询始终返回一个值 即使没有结果 我有这个东西工
  • PHP MYSQL文件内容转义问题

    我正在尝试使用 php 将 pdf 文件上传到 mysql 数据库中 除了文件内容之外 一切都很好 无论我如何尝试转义特殊字符 查询总是失败 主要是 未知命令 n 我使用过addslashes mysql real escape strin
  • libmysqlclient.a 和 libmysqlclient_r.a 有什么区别?

    我应该使用哪个来链接 mysqlclient 库 它们之间有什么区别 我似乎找不到答案 谢谢 较新版本的 MySQL 客户端发行版不包含 r 版本 有些可能有从 libmyqslclient r a 到 libmyqslclient a 的
  • MySQL 错误 1172 - 结果包含多行

    在存储过程中运行查询时 我从 MySQL 收到此错误 错误代码 1172 结果包含多行 我理解错误 我正在做一个SELECT INTO var list 因此查询需要返回单行 当我使用LIMIT 1 or SELECT DISTINCT 错
  • 非常大的字段会对 MySQL 数据库产生负面影响吗?

    我目前正在使用 Django 构建一个网站 并希望托管用户生物样式页面 该页面可能长达几 KB 这些字段不一定需要搜索 但在查找用户名时确实需要提供 将这些数据存储在数据库中会产生负面影响吗 如果我使用带有数据库链接的静态文本文件 我的服务
  • PHP MySql 百分比

    我的问题是关于百分比 我不是专家 所以我会尽力以更好的方式进行解释 我的 mysql 服务器中有一个表 假设有 700 条记录 如下所示 Name country language Birth Lucy UK EN 1980 Mari Ca

随机推荐

  • uniapp引入高德地图sdk经纬度解析诚地址名称

    1 申请key 2 下载js sdk amap wx js文件 https lbs amap com api wx gettingstarted 3 引入 import AMap from js sdk amap wx js 4 使用 th
  • 4.10实习日志

    1 命名规范 快捷键 命名规范 类名 首字母大写 单词和单词之间的首字母大写 函数名 变量名 首字母小写 单词和单词之间首字母大写 快捷键 注释 ctrl 运行 CTRL R 编译 ctrl b 查找 ctrl f 整行移动 CTRL sh
  • 投影矩阵的推导(OpenGl)

    概述 计算机显示器是一个2D平面 OpenGL渲染的3D场景必须以2D图像方式投影到计算机屏幕上 GL PROJECTION矩阵用于该投影变换 首先 它将所有定点数据从观察坐标转换到裁减坐标 接着 这些裁减坐标通过除以w分量的方式转换到归一
  • 一个 Nginx 如何实现部署多个不同的项目

    文章目录 nginx conf 配置文件 创建静态文件目录 效果 在 linux 中实现一个 nginx 部署2个不同的端口号访问不同的项目 nginx conf 配置文件 我们可以通过配置两个 server 来实现在一个 nginx 服务
  • 2020年十二月ccf-csp认证总结(内附个人题解)

    吐槽一下这个在线评测功能 平均四十分钟才能看到提交结果 本次成绩为100 100 0 30 20 最后两道题都是骗的分 提醒自己附代码的神奇图片 希望寒假有时间把没做出来的题目也再做一遍 csp官网更新出题目后 有路过的可以提醒我把题目加上
  • IMX6学习记录(15)-ffmpeg移植

    上面是我的微信和QQ群 欢迎新朋友的加入 1 获取源码 下载ffmpeg http ffmpeg org 下载libx264 http www videolan org developers x264 html 有git链接 用git拉算了
  • linux下mariadb的服务启动异常,centos7 – CentOS 7 MariaDB错误“无法启动mariadb.service:找不到单位.”...

    我对 Linux有点新手 在Windows上的Virtualbox中测试各种LAMP设置 目前我有一台Centos 7 VM 我正在尝试安装MariaDB 我在这里遵循指示 http www tecmint com install lamp
  • OpenTsdb官方文档----日期和时间

    查询数据时 OpenTSDB支持许多日期和时间格式 在通过GUI CliQuery工具或HTTP API提交的查询中支持以下格式 每个查询都需要一个开始时间和一个可选结束时间 如果未指定结束时间 则将使用运行TSD的系统上的当前时间 相对的
  • 战舰世界选服务器删除什么文件夹,《战舰世界》常见问题解决方案合集

    虚拟内存导致的无前提闪退 表现为 1 无弹出窗口 2 闪退后桌面分辨率会突然变大然后变正常 问题常出现于 win7 win8 1 win10 x86框架下的32位系统 解决方法 修改虚拟内存为系统实际物理内存的1 5倍 例如我是win10
  • [Win11] PowerShell无法激活Conda虚拟环境

    目录 一 问题背景 二 解决方案 一 问题背景 按照教程1安装Typora时 需使用PowerShell执行Python命令 然而 Win11 PowerShell无法激活Conda虚拟环境 报错如下图所示 二 解决方案 根据报错 发现无法
  • Vue.js实战读书笔记--计算属性

    计算属性 3 1 什么是计算属性 在双方绑定过程中如果有过长的数据 表达式或者复杂逻辑业务时 应将所有的计算属性都以函数的形式写在Vue实例的computed选项内 最终返回计算后的结果 举例 改写前 div text split reve
  • ESP32-C3系列模组简介

    ESP32 C3是一款安全稳定 低功耗 低成本的物联网芯片 搭载RISC V 32位单核处理器 为物联网产品提供行业领先的射频性能 完善的安全机制和丰富的内存资源 嵌入式智能终端 无线WIFI技术以及Internet的广泛应用必将使家居控制
  • [Python系列-15]:人工智能 - 数学基础 -5- 向量内积(点乘)和外积(叉乘)概念及几何意义

    作者主页 文火冰糖的硅基工坊 https blog csdn net HiWangWenBing 本文网址 https blog csdn net HiWangWenBing article details 119322764 TBD ht
  • 听我一句劝,千万别去外包,两年外包生涯做完,感觉自己废了一半....

    先说一下自己的情况 大专生 18年通过校招进入湖南某软件公司 干了接近5年的点点点 今年年上旬 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了五年的功能测试 已经让我变得不思进取 谈了2年的女朋友
  • 基础爬虫记~豆瓣+东方财富网爬虫

    基础小白 大佬轻点喷 一 基础豆瓣爬虫 1 首先在某站上听讲解 简单建立起了对爬虫的基础框架 具体包括五个板块 当然 有些东西看个人 可写成函数 也可以直接写 但重复用到的东西建议写函数 用到了下面五个库 from bs4 import B
  • 第五周:基于PIL的Python图像处理

    安装PIL注意 不是pip install Python Image Library 而是Pip install pillow pip算是PIL的一个分支 借助它我们可以完成 图像基本操作 缩放 裁剪 旋转 色彩转换 1 引用PIL fro
  • Linux Ubuntu 20.04LTS安装OpenSSL步骤

    其实 Ubuntu 20 04LTS 系统自带 OpenSSL 的 但是这个自带的openssl是没有 lt 头文件 h gt 和 lt 动态库文件 so及静态库文件 a gt 对于开发人员编程来说用不了 编译就报错找不到头文件 接口未定义
  • sqli-labs————less 23(高级注入篇)

    前言 从这一关开始 我们进进入了短暂的高级注入部分 这一部分中将会陆续介绍一些更为巧妙的注入技巧 Less 23 查看一下源代码
  • VS2013及QT安装

    参考如下链接 QT下载 QT下载 VS2013及QT安装 https jingyan baidu com article e8cdb32b132cd637052bade4 html
  • egg.js + mysql + windows 踩坑全纪录

    资料 egg js文档 https www eggjs org zh CN intro quickstart 背景 前面的都很简单 按照官方文档配置即可 全部调通以后 开始接触数据库mysql 因为米有后台开发背景 所以需要从头开始 步骤