工具篇:(二)MacOS 下载 MySQL 并进行配置连接,使用 VSCode 创建 Node 项目-亲测有效

news2025/1/17 4:06:35

MacOS 下载 MySQL 并进行配置连接,使用 VSCode 创建 Node 项目

我们将介绍如何在 macOS 上下载和配置 MySQL 数据库,并使用 VSCode 创建一个 Node.js 项目进行测试。通过这些步骤,您将能够顺利地设置开发环境并进行基本的数据操作。

一、删除之前的 MySQL 配置和软件

在 macOS 系统中,下载并配置 MySQL 客户端之前,清理掉之前的 MySQL 配置和相关软件是一个关键步骤。以下是详细的操作流程,帮助你彻底删除旧版本的 MySQL,并安装和配置新的 MySQL 客户端。

1.停止 MySQL 服务

打开终端,执行以下命令,确保 MySQL 服务已经停止:

sudo launchctl unload -w /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

2.卸载 MySQL

运行以下命令删除 MySQL:

sudo rm -rf /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*

3.删除 MySQL 配置文件

删除 MySQL 的配置文件(如有):

sudo rm -rf /etc/my.cnf
sudo rm -rf /etc/my.cnf.default

4.删除 MySQL 用户组

如果 MySQL 创建了用户和组,可以删除它们:

sudo dscl . -delete /Groups/mysql
sudo dscl . -delete /Users/mysql

5.清理环境变量

检查并删除可能存在的 MySQL 环境变量设置:

sudo nano /etc/paths

如果 /usr/local/mysql/bin 出现在路径中,删除该行。

6.删除 MySQL 相关日志和缓存

清理系统中的 MySQL 日志和缓存文件:

sudo rm -rf /var/log/mysql*
sudo rm -rf ~/Library/Preferences/com.oracle.mysql.plist

二、下载并安装 MySQL 客户端

1.访问 MySQL 官网

前往 MySQL 官方网站:https://dev.mysql.com/downloads/mysql/

2.选择 macOS 版本

在下载页面,选择适合你的 macOS 版本的 MySQL DMG 安装包。一般选择最新稳定版即可。

在这里插入图片描述

3.安装 MySQL

下载完成后,双击 .dmg 文件,按照提示进行安装。默认情况下,MySQL 会安装在 /usr/local/mysql 目录下。

在这里插入图片描述

4.配置 MySQL 环境变量

为了方便使用 MySQL 命令行工具,将其添加到系统的环境变量中。打开终端,编辑路径文件:

nano ~/.bash_profile

添加以下内容:

export PATH=/usr/local/mysql/bin:$PATH

保存并退出后,执行以下命令使配置生效:

source ~/.bash_profile

三、启动并连接 MySQL

1.启动 MySQL 服务

MySQL 安装完成后,可以使用 launchctl 启动服务:

sudo launchctl load -w /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

检查 MySQL 服务状态:

sudo launchctl list | grep mysql

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

2.连接 MySQL

使用以下命令连接到 MySQL:

mysql -u root -p

第一次启动时会要求你输入安装过程中生成的临时 root 密码,你可以使用该密码登录后更改密码。

2.1 客户端启动/暂停服务

在这里插入图片描述

3.设置 MySQL 的 root 密码

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

在这里插入图片描述

4.配置 MySQL 自动启动

如果需要每次开机自动启动 MySQL,可以使用以下命令:

sudo launchctl load -w /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

这样,你就可以在 macOS 上安装并配置 MySQL,准备好进行本地连接和开发。

四、使用 Navicat 连接 MySQL

1.打开 Navicat

启动 Navicat,进入主界面。

2.创建新的连接

  1. 点击左上角的 “连接” > “MySQL”。
  2. 在弹出的窗口中填写以下信息:
    • 连接名称:可以随意填写,比如 MySQL_Local
    • 主机名localhost(本地连接)
    • 端口3306(默认 MySQL 端口)
    • 用户名root
    • 密码:你在安装 MySQL 时为 root 用户设置的密码
  3. 填写完成后,点击 “测试连接” 按钮,确保连接成功。
  4. 如果测试通过,点击 “确定” 保存连接。

在这里插入图片描述

在这里插入图片描述

3.创建数据库

1.连接到 MySQL

在左侧栏中,找到刚才创建的连接 MySQL_Local,双击连接,进入 MySQL 服务器。

2.创建数据库
  1. 右键点击连接名下的 “数据库” 目录,选择 “新建数据库”。

  2. 在弹出的窗口中填写数据库名称,输入 test_db

  3. 字符集选择 utf8mb4(推荐用于支持各种语言字符)。

  4. 在这里插入图片描述

  5. 点击 “确定”,完成数据库的创建。

在这里插入图片描述

4.验证数据库创建

  1. 展开左侧的数据库列表,找到并点击 test_db,你可以看到数据库已经创建成功。
  2. 你现在可以在 test_db 中创建表、插入数据,进行各种数据库操作。

在这里插入图片描述

五、在 VSCode 中创建一个 Node.js 服务

在 VSCode 中创建一个 Node.js 服务,并连接到本地的 MySQL 数据库,涉及到以下几个步骤:

1.准备环境

  1. 安装 Node.js
    如果你还没有安装 Node.js,可以前往 Node.js 官网 进行下载并安装。你可以使用以下命令检查是否已经安装 Node.js:

    node -v
    npm -v
    
  2. 安装 MySQL 客户端
    确保已经安装并配置好 MySQL,并且能够通过命令行或 Navicat 连接。

2.创建 Node.js 项目

  1. 在 VSCode 中创建项目文件夹
    打开 VSCode,创建一个新的项目文件夹,例如 mysql-node-app

  2. 初始化 Node.js 项目
    在终端中导航到你的项目文件夹,使用以下命令初始化项目:

    npm init -y
    

    这将生成一个 package.json 文件,管理项目的依赖和配置信息。

  3. 安装 MySQL 依赖
    使用以下命令安装 mysql2 模块,这是一个流行的 Node.js MySQL 客户端库:

    npm install mysql2
    

3.创建 Node.js 服务并连接 MySQL

  1. 创建 index.js 文件
    在你的项目文件夹中,创建一个 index.js 文件。该文件将是 Node.js 服务的入口点。

  2. 在这里插入图片描述

  3. 编写代码连接 MySQL

    index.js 文件中,编写以下代码以连接本地 MySQL 数据库并进行查询操作:

在这里插入图片描述

// 导入 mysql2 模块
const mysql = require('mysql2');

// 创建 MySQL 连接池
const connection = mysql.createConnection({
    host: 'localhost',    // MySQL 服务器地址
    user: 'root',         // MySQL 用户名
    password: '你的 MySQL 密码', // MySQL 密码
    database: 'test_db'   // 连接的数据库名
});

// 连接到 MySQL 数据库
connection.connect((err) => {
    if (err) {
        console.error('连接失败: ' + err.stack);
        return;
    }
    console.log('已连接到 MySQL 数据库');
});

// 查询数据库中的表
connection.query('SHOW TABLES', (err, results, fields) => {
    if (err) {
        console.error('查询失败: ' + err.stack);
        return;
    }

    console.log('数据库中的表:', results);
});

// 关闭连接
connection.end();

4.运行 Node.js 服务*

在 VSCode 的终端中,运行以下命令启动 Node.js 服务:

node index.js

如果一切正常,你会看到类似以下输出,表示成功连接 MySQL,并显示出数据库中的表:

已连接到 MySQL 数据库
数据库中的表: [ ... ]

在这里插入图片描述

5.扩展功能:执行 CRUD 操作

如果你想进一步在数据库中创建表、插入数据、更新或删除数据,可以基于以下代码扩展:

1.创建表
connection.query(`
   CREATE TABLE users (
       id INT AUTO_INCREMENT PRIMARY KEY,
       name VARCHAR(100),
       email VARCHAR(100)
   );
`, (err, results) => {
   if (err) {
       console.error('创建表失败: ' + err.stack);
       return;
   }
   console.log('表已创建:', results);
});
插入数据
connection.query(`
   INSERT INTO users (name, email)
   VALUES ('John Doe', 'john@example.com');
`, (err, results) => {
   if (err) {
       console.error('插入数据失败: ' + err.stack);
       return;
   }
   console.log('数据已插入:', results);
});
查询数据
connection.query('SELECT * FROM users', (err, results) => {
   if (err) {
       console.error('查询失败: ' + err.stack);
       return;
   }
   console.log('查询结果:', results);
});

通过这些步骤,你就可以使用 Node.js 连接到本地 MySQL 数据库,并在 VSCode 中运行服务。如果有任何问题或需要进一步的帮助,随时告诉我!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2214478.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【国际学术会议之都,IEEE出版】第四届计算机科学、电子信息工程和智能控制技术国际会议(CEI 2024,2024年11月8-10日)

第四届计算机科学、电子信息工程和智能控制技术国际会议(CEI 2024) 2024 4th International Conference on Computer Science, Electronic Information Engineering and Intelligent Control Technology 官方信息 会议官网:www.ic-cei.org …

AFSim仿真系统 --- 系统简解_10处理器 (Processors)

处理器 (Processors) 处理器提供了为特定平台定义行为的能力。 大多数处理器由用户使用 AFSIM 脚本语言定义。 以下是一些预定义的处理器类型: WSF_DIRECTION_FINDER_PROCESSORWSF_TRACK_PROCESSORWSF_MESSAGE_PROCESSORWSF_GUIDANCE_COMPUTERWSF_IMAGE_PROCESS…

Android11 USB Camera会出现预览绿屏问题

目录 一、问题描述 二、问题原因 三、解决方法 一、问题描述 DDR容量是4G及以上的机器,USB Camera会出现预览绿屏问题。 串口中会刷如下log: 二、问题原因 RGA2使用超过4G内存会异常,导致USB Camera调用rga相关操作报错,从而预览绿屏 三…

深度学习基础—神经风格迁移

1.什么是神经风格迁移 神经风格迁移就是将一张图片的风格迁移到另一张图片上,生成具有第一张图片风格的新的图片。新图片的主体还是第二张图片,但是风格是第一张图片的。 如下两组图片都是神经风格迁移的例子: 将绘画的风格迁移到真实建筑图片…

树型名称前面插入图片

需求&#xff1a; 搜索树、树型要显示连线&#xff0c;还有名称前带图片 ui组件&#xff1a;https://devui.design/components/zh-cn/overview 直接上代码 [checkable] false 表示取消复选框 <div class"p-sm"><div class"row"><d-sea…

软件开发----Java基础每日刷题(转载于牛客)

1. 对抽象类的描述正确的是() A 抽象类的方法都是抽象方法 B 一个类可以继承多个抽象类 C 抽象类不能有构造方法 D 抽象类不能被实例化 正确答案&#xff1a;D 解析&#xff1a; A.抽象类可以有非抽象的方法&#xff0c;而接口中的方…

Flythings学习(三)界面交互

文章目录 1 界面切换1.1 打开界面1.2 关闭界面 2 界面活动周期2.1 打开不存在页面的活动流程2.2 打开已存在界面&#xff08;被隐藏的界面&#xff09;2.3 关闭界面的流程 1 界面切换 界面切换的相关函数如下 1.1 打开界面 如果需要打开一个界面&#xff0c;在其他界面的控件…

WebSocket状态码及异常报错1006

文章目录 1.WebSocket协议简介2.WebSocket状态码的作用&#xff1a;3.WebSocket状态码1006详解1.问题原因2.解决方案 1.WebSocket协议简介 WebSocket协议是一种基于TCP的协议&#xff0c;它通过在浏览器和服务器之间建立一条持久的双向通信通道&#xff0c;实现了实时的数据传…

【论文阅读】SAM 2: 分割一切图像和视频

导言 继SAM模型发布以来&#xff0c;Meta公司于2024年8月发布第二个图像分割大模型SAM2。相较于第一代SAM模型&#xff0c;论文提出了第二代“分割任意物体模型” (SAM 2)&#xff0c;旨在解决视频中的可提示视觉分割任务&#xff08;Promptable Visual Segmentation, PVS&…

TVS常规过压保护

一、前言 上一篇文章 TVS选型-CSDN博客https://blog.csdn.net/qq_39543984/article/details/142825929?spm=1001.2014.3001.5501我们介绍了如何通过理论计算选择合适的TVS,TVS主要是防止瞬间过压,因为他的名字就叫瞬态二极管(Transient Voltage Suppressor)。本文就通过理…

自动化检查网页的TDK,python+selenium自动化测试web的网页源代码中的title,Description,Keywords

首先&#xff0c;TDK是什么&#xff1f;对于新手小白来说&#xff0c;可能是懵逼的&#xff0c;所以这里给出一个官方的解说‌网页的TDK是指标题&#xff08;Title&#xff09;、描述&#xff08;Description&#xff09;和关键词&#xff08;Keywords&#xff09;的集合‌。这…

智慧船舶物联网实训室建设方案

第一章 建设背景 随着全球海洋经济的蓬勃发展与智能化技术的日新月异&#xff0c;数字船舶物联网&#xff08;Internet of Things for Maritime, IoT-Maritime&#xff09;与人工智能&#xff08;Artificial Intelligence, AI&#xff09;的结合已成为推动航运业转型升级的关键…

企业资源枯竭时,数字化转型能否带来新资源?

​在商业竞争激烈的当下&#xff0c;企业发展依赖各类资源。然而&#xff0c;资源可能面临枯竭&#xff0c;如原材料短缺、市场份额下降、人才流失等。此时&#xff0c;数字化转型成为企业突破困境的重要途径&#xff0c;那么它能否带来新资源呢&#xff1f; 先看企业资源分类。…

C++,STL 031(24.10.14)

内容 stack容器&#xff08;栈&#xff09;的常用接口。 代码 #include <iostream> #include <stack> // 注意包含stack容器&#xff08;栈&#xff09;的头文件using namespace std;void test01() {stack<int> s1; // here01&#xff0c;默认构造stack<…

5g工业路由器最新案例:高原气象站网络升级项目

背景&#xff1a; 某省气象局决定在高原地区升级其气象观测网络&#xff0c;以提高天气预报的准确性和及时性&#xff0c;同时为气候变化研究提供更可靠的数据支持。该项目面临以下挑战&#xff1a; 需要在高原广袤且地形复杂的区域部署大量自动气象站&#xff0c;要求网络覆…

pytorh学习笔记——手写数字识别mnist

pytorh学习第二站&#xff1a;手写数字识别 一、训练程序 1、创建脚本框架mnist_demo.py&#xff1a; import torch import torchvision.datasets as dataset# data # 定义数据# net # 定义网络# loss # 损失# optimizer # 优化# training # 训练# test # 测试# save# 保…

uniapp onPageScroll

子组件有onPageScroll, 首页也要引入onPageScroll, eg: 主页面 sell/detail/index 《子组件》 <script setup> 引入onPageScroll </script> 组件&#xff1a; 引入onPageScroll 别人的比较

智能健康顾问:基于SpringBoot的系统

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常…

Pytorch——pip下载安装pytorch慢的解决办法

一、找到需要下载的pytorch链接 运行&#xff1a;pip install torch1.11.0cu113 torchvision0.12.0cu113 torchaudio0.11.0 --extra-index-url https://download.pytorch.org/whl/cu113。然后得到&#xff1a; 我这里为&#xff1a;https://download.pytorch.org/whl/cu113/t…

Odin插件基本使用

介绍 Odin Inspector是Unity的一个插件&#xff0c;让您可以享受拥有强大&#xff0c;自定义和用户友好编辑器的所有工作流程优势&#xff0c;而无需编写任何自定义编辑器代码。 安装 需要有对应的unity包或者去官网或者资源商店下载 官方网址 Odin Inspector and Seriali…