百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

程序员必备技能——解压版MySQL安装

wptr33 2025-02-13 14:33 22 浏览

作为程序员的我们,数据库是必不可少的一个工具,但是现在的小海豚却不像以前那么容易掌控,先不说网站打开的速度奇慢,作为个人开发者的我们,有时甚至找不到下载页面在哪,属实令人抓狂。

再者现在都已经 2024 年了,虽然 32 位系统还不少见,单作为程序员的我们,肯定要安装适配电脑的 64 位系统,but ,64 位 MySQL 竟然只有解压版。导致不少人陷入沉思,回想是不是自己打开的姿势不对。这都没关系,本篇文章将介绍如何安装 64 位的 MySQL,以及如何处理这期间的各种坑。

注意: 这里是解压版,非安装版。

下载

现在如果直接进入 MySQL 的官网主页,你可能看到如下界面:

那么如果猜的没错的话,接下来大概率会迷路,这里就不卖关子了,我们直接进入正题,下载免费的社区版

https://dev.mysql.com/downloads/mysql/

打开网址后能看到如下界面

这里我们选择版本,以及系统,接着点击下载 zip 版本。

这里我们直接点击下方的文字(just start my download),否则需要登陆,很麻烦的。

下载完成后就会得到这么一个文件(下载慢的话可以使用迅雷)。

安装和配置

1.解压文件

首先我们需要将上边下载的 zip 安装包解压到一个目录(根据自己的实际情况设置)。

2.配置环境变量

将解压后的 MySQL bin 目录配置到 path 中。

3. 设置 MySQL 配置文件

进入 MySQL 根目录(和 bin 同一级目录),新建一个 my.ini 文件

在文件中新增如下内容

[mysqld]
; 设置3306端口
port=3306
; 设置mysql的安装目录
basedir=C:\\soft\\mysql-8.0.36-winx64
; 设置mysql数据库的数据的存放目录
datadir=C:\\soft\\mysql-8.0.36-winx64\\mysql-data
; 允许最大连接数
max_connections=200
; 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
; 服务端使用的字符集默认为UTF8
character-set-server=utf8
; 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
; 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
; 设置mysql客户端默认字符集
default-character-set=utf8
[client]
; 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

格外注意:

  1. 上边的basedir 和 datadir 需要改成自己的目录
  2. 路径分隔符需要使用 \\
  3. 没有 mysql-data 文件夹的需要自己新建
  4. default_authentication_plugin 这个必须加,否则可能导致 root 初始密码无法登陆。

初始化数据库

这里我们以管理员身份启动 cmd 命令行,并进入到 bin 中,执行如下命令:

mysqld --initialize --console

这里需要稍等一会儿,运行期间不要关闭上边的页面。如上,运行成功后会生成一串临时密码。。。。

初始化阶段可能会出现以下一些问题:

  1. 找不到MSVCP140.dll

这是因为缺少Visual C++ Redistributable for Visual Studio 2015 环境导致的,这里我们需要到微软官网下载安装。

https://www.microsoft.com/zh-CN/download/details.aspx?id=48145

当然,也可以直接下载MSVCP140.dll 文件,并放到 C:\Windows\System32,运行如下批处理命令注册 dll(必须要运行):

@echo 开始注册
copy msvcp140.dll %windir%\system32\
regsvr32 %windir%\system32\msvcp140.dll /s
@echo msvcp140.dll注册成功
@pause

上述步骤执行完成后,就可以重新运行初始化数据库的命令了。

  1. 控制台输出警告信息

这里的意思是后续发行版会使用 UTF8MB4,需要将 my.ini 配置中的 utf8 替换为UTF8MB4

安装服务

1.安装 mysqld 服务,注意单词里有个 d,不要遗漏了,否则无法运行。

mysqld -install

2.启动服务

net start mysql

3.登陆数据库

mysql -u root -p

这里要求输入密码,初始密码就在我们初始完数据库后控制台中打印

4.修改密码

执行下方命令,修改默认密码,这里 BY后输入自己的密码,不建议使用root,很容易被黑。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

5.测试连接

到这里就已经正常安装MySQL且正常可用了,开始你的编程之旅吧。

相关推荐

什么是Java中的继承?如何实现继承?

什么是继承?...

Java 继承与多态:从基础到实战的深度解析

在面向对象编程(OOP)的三大支柱中,继承与多态是构建灵活、可复用代码的核心。无论是日常开发还是框架设计,这两个概念都扮演着至关重要的角色。本文将从基础概念出发,结合实例与图解,带你彻底搞懂Java...

Java基础教程:Java继承概述_java的继承

继承概述假如我们要定义如下类:学生类,老师类和工人类,分析如下。学生类属性:姓名,年龄行为:吃饭,睡觉老师类属性:姓名,年龄,薪水行为:吃饭,睡觉,教书班主任属性:姓名,年龄,薪水行为:吃饭,睡觉,管...

java4个技巧:从继承和覆盖,到最终的类和方法

日复一日,我们编写的大多数Java只使用了该语言全套功能的一小部分。我们实例化的每个流以及我们在实例变量前面加上的每个@Autowired注解都足以完成我们的大部分目标。然而,有些时候,我们必须求助于...

java:举例说明继承的概念_java继承的理解

在现实生活中,继承一般指的是子女继承父辈的财产。在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系。例如猫和狗都属于动物,程序中便可以描述为猫和狗继承自动物,同理,...

从零开始构建一款开源的 Vibe Coding 产品 Week1Day4:业界调研之 Agent 横向对比

前情回顾前面两天我们重点调研了了一下Cursor的原理和Cursor中一个关键的工具edit_file的实现,但是其他CodingAgent也需要稍微摸一下底,看看有没有优秀之处,下...

学会这几个插件,让你的Notepad++使用起来更丝滑

搞程序开发的小伙伴相信对Notepad++都不会陌生,是一个占用空间少、打开启动快的文件编辑器,很多程序员喜欢使用Notepad++进行纯文本编辑或者脚本开发,但是Notepad++的功能绝不止于此,...

将 node_modules 目录放入 Git 仓库的优点

推荐一篇文章Whyyoushouldcheck-inyournodedependencies[1]...

再度加码AI编程,腾讯发布AI CLI并宣布CodeBuddy IDE开启公测

“再熬一年,90%的程序员可能再也用不着写for循环。”凌晨两点半,王工还在公司敲键盘。他手里那份需求文档写了足足六页,产品经理反复改了三次。放在过去,光数据库建表、接口对接、单元测试就得写两三天。现...

git 如何查看stash的内容_git查看ssh key

1.查看Stash列表首先,使用gitstashlist查看所有已保存的stash:...

6万星+ Git命令懒人必备!lazygit 终端UI神器,效率翻倍超顺手!

项目概览lazygit是一个基于终端的Git命令可视化工具,通过简易的TUI(文本用户界面)提升Git操作效率。开发者无需记忆复杂命令,即可完成分支管理、提交、合并等操作。...

《Gemini CLI 实战系列》(一)Gemini CLI 入门:AI 上命令行的第一步

谷歌的Gemini模型最近热度很高,而它的...

deepin IDE新版发布:支持玲珑构建、增强AI智能化

IT之家8月7日消息,深度操作系统官方公众号昨日(8月6日)发布博文,更新推出新版deepin集成开发环境(IDE),重点支持玲珑构建。支持玲珑构建deepinIDE在本次重磅更...

狂揽82.7k的star,这款开源可视化神器,轻松创建流程图和图表

再不用Mermaid,你的技术文档可能已经在悄悄“腐烂”——图表版本对不上、同事改完没同步、评审会上被一句“这图哪来的”问得哑口无言。这不是危言耸听。GitHub2025年开发者报告显示,63%的新仓...

《Gemini CLI 实战系列》(五)打造专属命令行工具箱

在前几篇文章中,我们介绍了GeminiCLI的基础用法、效率提升、文件处理和与外部工具结合。今天我们进入第五篇...