MySQL安装及启用详细教程(Windows版)

MySQL安装及启用详细教程(Windows版)

📋 概述

本文档将详细介绍MySQL数据库在Windows系统下的下载、安装、配置和启用过程。


📥 MySQL下载

官方下载地址

  • 官方网站: https://dev.mysql.com/downloads/
  • 社区版本: https://dev.mysql.com/downloads/mysql/
  • 推荐版本: MySQL 8.0.x(最新稳定版)

版本选择建议

  • MySQL 8.0: 最新功能,性能最佳,推荐生产环境使用
  • MySQL 5.7: 成熟稳定,兼容性好,适合传统项目
  • MySQL 5.6: 较老版本,仅在特殊兼容性需求下使用

🪟 Windows系统安装

MSI安装包

1. 下载安装包
# 访问官网下载页面
https://dev.mysql.com/downloads/mysql/
# 选择:MySQL Installer for Windows
2. 安装步骤
  1. 运行安装程序

    • 双击mysql-installer-web-community-8.0.x.x.msi
    • 如果提示需要.NET Framework,请先安装
  2. 选择安装类型

    Developer Default    - 开发环境(推荐)
    Server only         - 仅服务器
    Client only         - 仅客户端
    Full               - 完整安装
    Custom             - 自定义安装
    

    我自己大概选了这些:

在这里插入图片描述

  1. 产品配置

    • MySQL Server配置
    • MySQL Workbench(图形化工具)
    • MySQL Shell(命令行工具)
    • 示例数据库
  2. 服务器配置

    Config Type: Development Computer
    Connectivity: TCP/IP, Port: 3306
    Authentication: Use Strong Password Encryption
    
  3. 设置root密码

    # 设置强密码(建议包含大小写字母、数字、特殊字符)
    # 例如:MyPass@123
    
  4. Windows服务配置

    ✅ Configure MySQL Server as a Windows Service
    ✅ Start the MySQL Server at System Startup
    Service Name: MySQL80
    

⚙️ MySQL配置详解

配置文件位置

# Windows MSI安装
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

重要配置参数

[mysqld]
# 基本设置
port=3306
basedir=C:\mysql-8.0.35
datadir=C:\mysql-8.0.35\data# 字符集设置
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci# 连接设置
max_connections=200
max_connect_errors=100# 内存设置(根据电脑配置调整)
innodb_buffer_pool_size=512M
key_buffer_size=128M
sort_buffer_size=2M# 日志设置
log-error=error.log
slow_query_log=1
slow_query_log_file=slow.log
long_query_time=2# InnoDB设置
innodb_flush_log_at_trx_commit=1
innodb_lock_wait_timeout=50

🚀 服务启动与停止

图形界面方式

# 方法1:服务管理器
1. Win + R 输入 services.msc
2. 找到 "MySQL80" 服务
3. 右键选择启动/停止/重启# 方法2:任务管理器
1. Ctrl + Shift + Esc 打开任务管理器
2. 切换到"服务"选项卡
3. 找到MySQL80服务进行操作

命令行方式

# 启动MySQL服务
net start MySQL80# 停止MySQL服务
net stop MySQL80# 重启MySQL服务
net stop MySQL80 && net start MySQL80# 查看服务状态
sc query MySQL80

🔐 首次连接与配置

获取初始密码

# MSI安装:安装过程中设置的密码
# ZIP安装:查看初始化时控制台输出的临时密码
# 或在data目录下的.err文件中搜索"temporary password"

首次连接

# 使用设置的密码连接(MSI安装)
mysql -u root -p# 使用临时密码连接(ZIP安装)
mysql -u root -p
# 输入临时密码后,必须立即修改密码

修改root密码

-- 方法1:使用ALTER USER(MySQL 8.0推荐)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword@123';-- 方法2:使用SET PASSWORD
SET PASSWORD FOR 'root'@'localhost' = 'NewPassword@123';-- 刷新权限
FLUSH PRIVILEGES;

🔧 客户端工具介绍

命令行客户端

mysql命令
# 本地连接
mysql -u root -p# 指定数据库连接
mysql -u root -p database_name# 执行SQL文件
mysql -u root -p < script.sql# 常用参数
-u, --user        用户名
-p, --password    密码(回车后输入)
-D, --database    指定数据库
-e, --execute     执行SQL语句
mysqladmin工具
# 查看服务器状态
mysqladmin -u root -p status# 查看服务器变量
mysqladmin -u root -p variables# 创建数据库
mysqladmin -u root -p create database_name# 删除数据库
mysqladmin -u root -p drop database_name# 关闭服务器
mysqladmin -u root -p shutdown

图形化客户端

MySQL Workbench(官方推荐)
  • 下载地址: https://dev.mysql.com/downloads/workbench/
  • 特点: 官方工具,功能完整,免费
  • 功能: 数据库设计、SQL开发、服务器管理
Navicat for MySQL(商业)
  • 特点: 界面友好,功能强大
  • 功能: 数据同步、备份、报表生成
DBeaver(免费)
  • 下载地址: https://dbeaver.io/
  • 特点: 支持多种数据库,免费开源
  • 功能: SQL编辑、数据查看、ER图

🐛 常见问题与解决方案

安装问题

1. 安装失败
# 问题:提示需要Microsoft Visual C++ Redistributable
# 解决:下载安装最新版本的VC++运行库# 问题:端口3306被占用
# 解决:修改端口或停止占用服务
netstat -ano | findstr :3306
taskkill /PID <进程ID> /F
2. 服务无法启动
# 问题:MySQL服务启动失败
# 解决:检查配置文件和日志
# 查看错误日志:data目录下的.err文件
3. 防火墙问题
# Windows防火墙设置
1. 控制面板 -> 系统和安全 -> Windows Defender防火墙
2. 点击"允许应用或功能通过Windows Defender防火墙"
3. 找到MySQL相关程序,勾选允许

连接问题

1. 连接被拒绝
-- 检查用户权限
SELECT user, host FROM mysql.user;-- 创建新用户(如需要)
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost';
FLUSH PRIVILEGES;
2. 密码认证问题
-- MySQL 8.0密码认证插件问题
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
3. 字符集问题
-- 查看字符集设置
SHOW VARIABLES LIKE 'character%';
SHOW VARIABLES LIKE 'collation%';-- 设置数据库字符集
CREATE DATABASE dbname CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

性能问题

1. 服务启动慢
# 在my.ini中调整
[mysqld]
innodb_flush_log_at_trx_commit=2
2. 内存使用过高
# 调整内存相关参数
[mysqld]
innodb_buffer_pool_size=256M    # 根据可用内存调整
key_buffer_size=64M
sort_buffer_size=1M

📋 验证安装

基本连接测试

# 1. 连接MySQL
mysql -u root -p# 2. 查看版本信息
SELECT VERSION();# 3. 查看当前数据库
SELECT DATABASE();# 4. 显示所有数据库
SHOW DATABASES;# 5. 查看服务器状态
SHOW STATUS;# 6. 退出
EXIT;

创建测试数据库

-- 创建测试数据库
CREATE DATABASE test_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;-- 使用数据库
USE test_db;-- 创建测试表
CREATE TABLE test_table (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50) NOT NULL,email VARCHAR(100) UNIQUE,created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);-- 插入测试数据
INSERT INTO test_table (name, email) VALUES 
('张三', 'zhangsan@example.com'),
('李四', 'lisi@example.com');-- 查询数据
SELECT * FROM test_table;-- 删除测试数据库
DROP DATABASE test_db;

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

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

相关文章

Linux下使用nmcli连接网络

Linux下使用nmcli连接网络 介绍 在使用ubuntu系统的时候&#xff0c;有时候不方便使用桌面&#xff0c;使用ssh远程连接&#xff0c;可能需要使用nmcli命令来连接网络。本文将介绍如何使用nmcli命令连接网络。nmcli 是 NetworkManager 的命令行工具&#xff0c;用于管理网络连…

Python----循环神经网络(BiLSTM:双向长短时记忆网络)

一、LSTM 与 BiLSTM对比 1.1、LSTM LSTM&#xff08;长短期记忆网络&#xff09; 是一种改进的循环神经网络&#xff08;RNN&#xff09;&#xff0c;专门解决传统RNN难以学习长期依赖的问题。它通过遗忘门、输入门和输出门来控制信息的流动&#xff0c;保留重要信息并丢弃无关…

U盘挂载Linux

在 只能使用 Telnet 的情况下&#xff0c;如果希望通过 U盘 传输文件到 Linux 系统&#xff0c;可以按照以下步骤操作&#xff1a; &#x1f4cc; 前提条件 U盘已插入 Linux 主机的 USB 接口。Linux 主机支持自动挂载 U盘&#xff08;大多数现代发行版默认支持&#xff09;。T…

QuickBASIC QB64 支持 64 位系统和跨平台Linux/MAC OS

QuickBASIC 的现代继任者 QB64 已发展成为一个功能强大的开源项目&#xff0c;支持 64 位系统和跨平台开发。以下是详细介绍&#xff1a; 项目首页 - QB64pe:The QB64 Phoenix Edition Repository - GitCode https://gitcode.com/gh_mirrors/qb/QB64pe 1. QB64 概述 官网&am…

【C++高级主题】命令空间(五):类、命名空间和作用域

目录 一、实参相关的查找&#xff08;ADL&#xff09;&#xff1a;函数调用的 “智能搜索” 1.1 ADL 的核心规则 1.2 ADL 的触发条件 1.3 ADL 的典型应用场景 1.4 ADL 的潜在风险与规避 二、隐式友元声明&#xff1a;类与命名空间的 “私密通道” 2.1 友元声明的基本规则…

免费开源Umi-OCR,离线使用,批量精准!

Umi-OCR&#xff08;Windows端&#xff09; Umi-OCR 是一款在 GitHub 上开源的免费 OCR 识别软件&#xff0c;它最大的亮点就是免费、开源、支持批量处理&#xff0c;而且识别准确度很高。这款软件不需要联网就能用&#xff0c;非常值得推荐&#xff01; 在 OCR 识别功能方面&…

深入剖析 Docker 容器化原理与实战应用,开启技术新征程!

文章目录 前言一、为什么 是Docker &#xff1f;二、Docker 容器化原理分析2.1 镜像&#xff08;Image&#xff09;2.2 容器&#xff08;Container&#xff09;2.3 仓库&#xff08;Registry&#xff09; 三、Docker 容器化实践3.1 Docker安装3.2 创建一个 Docker 镜像3.3 运行…

黑马程序员TypeScript课程笔记—class篇

class的基本使用 class的构造函数&#xff08;实现实例属性的初始化&#xff09; 在使用构造函数的时候&#xff0c;小括号的后面不要指定类型&#xff0c;否则就会报错&#xff0c;因为构造函数没有返回值 class实例方法 class继承&#xff08;extends&#xff09; class继承…

PDF.js无法显示数字签名

问题 pdfjs加载pdf文件时无法显示数字签名 PDF.js 从 v2.9.359 版本开始正式支持数字签名的渲染与显示&#xff0c;此前版本需通过修改源代码实现基础兼容。 建议升级pdfjs组件大于等于v2.9.359 pdfjs历史版本&#xff1a;https://github.com/mozilla/pdf.js/releases pdfjs…

解决VS Code误报Java问题的终极方法

使用vscode写java&#xff0c;发现很多Problems&#xff0c;如下图&#xff0c;实际上并没有问题&#xff0c;是误报&#xff0c;怎么解决&#xff1f; 解决方案&#xff1a;disable下面这个插件&#xff0c;它和vscode-java插件冲突了导致。

【WPF】从普通 ItemsControl 到支持筛选的 ItemsControl:深入掌握 CollectionViewSource 用法

✨ 从普通 ItemsControl 到支持筛选的 ItemsControl&#xff1a;深入掌握 CollectionViewSource 用法 在日常 WPF 开发中&#xff0c;我们经常需要对数据进行筛选、排序、分组等操作&#xff0c;而原生的 ItemsControl 并不直接支持这些功能。本文将介绍如何通过 CollectionVi…

Mybatis Plus JSqlParser解析sql语句及JSqlParser安装步骤

MyBatis Plus与JSqlParser&#xff1a;SQL语句解析与实战指南 在现代Java开发中&#xff0c;SQL解析和动态SQL生成是数据库操作中不可或缺的一部分。MyBatis Plus作为MyBatis的增强工具&#xff0c;通过JSqlParser库实现了对SQL语句的深度解析和修改能力。本文将详细介绍如何在…

学习路之PHP--easyswoole使用视图和模板

学习路之PHP--easyswoole使用视图和模板 一、安装依赖插件二、 实现渲染引擎三、注册渲染引擎四、测试调用写的模板五、优化六、最后补充 一、安装依赖插件 composer require easyswoole/template:1.1.* composer require topthink/think-template相关版本&#xff1a; "…

设计模式——享元设计模式(结构型)

摘要 享元设计模式是一种结构型设计模式&#xff0c;旨在通过共享对象减少内存占用和提升性能。其核心思想是将对象状态分为内部状态&#xff08;可共享&#xff09;和外部状态&#xff08;不可共享&#xff09;&#xff0c;并通过享元工厂管理共享对象池。享元模式包含抽象享…

互联网大厂Java求职面试:云原生微服务架构设计与AI大模型集成实战

互联网大厂Java求职面试&#xff1a;云原生微服务架构设计与AI大模型集成实战 面试场景设定 人物设定&#xff1a; 李明&#xff08;技术总监&#xff09;&#xff1a;拥有15年分布式系统架构经验&#xff0c;主导过多个亿级用户系统的重构&#xff0c;对云原生和AI融合有深…

nginx+tomcat动静分离、负载均衡

一、理论 nginx用于处理静态页面以及做调度器&#xff0c;tomcat用于处理动态页面 lvs&#xff08;四层&#xff09; 轮询&#xff08;rr&#xff09; 加权轮询&#xff08;wrr&#xff09; 最小连接&#xff08;lc&#xff09; 加权最小连接&#xff08;wlc&#xff09; ngi…

什么是AI芯片?

首先&#xff0c;我们要了解一下&#xff1a;什么是芯片&#xff1f;芯片的本质就是在半导体衬底上制作能实现一系列特定功能的集成电路。 其次&#xff0c;来看一下AI的概念。AI是研究如何使计算机能够模拟和执行人类智能任务的科学和技术领域&#xff0c;致力于开发能够感知…

PostgreSQL数据库配置SSL操作说明书

背景&#xff1a; 因为postgresql或者mysql目前通过docker安装&#xff0c;只需要输入主机IP、用户名、密码即可访问成功&#xff0c;这样其实是不安全的&#xff0c;可能会通过一些手段获取到用户名密码导致数据被窃取。而ES、kafka等也是通过用户名/密码方式连接&#xff0c;…

k8s更新证书

[rootk8s-master01 ~]# sudo kubeadm certs renew all [renew] Reading configuration from the cluster… [renew] FYI: You can look at this config file with ‘kubectl -n kube-system get cm kubeadm-config -o yaml’ certificate embedded in the kubeconfig file for…

正点原子lwIP协议的学习笔记

正点原子lwIP协议的学习笔记 正点原子lwIP学习笔记——lwIP入门 正点原子lwIP学习笔记——MAC简介 正点原子lwIP学习笔记——PHY芯片简介 正点原子lwIP学习笔记——以太网DMA描述符 正点原子lwIP学习笔记——裸机移植lwIP 正点原子lwIP学习笔记——裸机lwIP启动流程 正点…