当前位置: 首页 > news >正文

新手向:从零开始MySQL超详细安装、配置与使用指南

什么是MySQL?

一句话解释: 

MySQL是全球最流行的开源关系型数据库,像淘宝、Facebook等大型网站都在使用它存储数据!
它采用表格形式管理数据(类似Excel),支持SQL语言进行数据操作。

 第一步:安装MySQL(多系统详解)

 Windows 系统
  1. 下载安装包

    • 访问官网:https://dev.mysql.com/downloads/mysql/

    • 选择 MySQL Installer MSI(Windows专用安装器)

    • 下载大小约500MB的 mysql-installer-community-8.0.xx.msi 文件

  2. 安装过程

    1. 双击安装包 → 选择"Developer Default"(开发者默认配置)
    2. 点击"Execute"安装依赖 → 全部完成后点"Next"
    3. 在配置页面:- 设置root密码(必须牢记!)- 勾选✅ "Add firewall exception for this port"(开放端口)- 勾选✅ "Start the MySQL Server at System Startup"(开机自启)
    4. 后续全部点"Next" → 最后点"Execute"完成安装

    验证安装

  3. 打开开始菜单 → 搜索"MySQL Command Line Client"

  4. 输入root密码登录 → 出现 mysql> 提示符即成功!

 Mac 系统

推荐DMG安装方式

  1. 官网下载macOS版DMG包:https://dev.mysql.com/downloads/mysql/

  2. 双击 .dmg 文件 → 运行 mysql-8.0.xx-macosxx.pkg

  3. 关键配置步骤:

    - 在"Configuration"步骤:1. 选择"Use Strong Password Encryption"2. 设置root密码(建议12位含大小写+数字)3. 勾选✅ "Start MySQL Server on startup"

    终端验证

    # 添加MySQL到环境变量
    echo 'export PATH=/usr/local/mysql/bin:$PATH' >> ~/.zshrc
    source ~/.zshrc# 登录MySQL
    mysql -u root -p
    Linux 系统(Ubuntu为例)
  4. 打开终端执行:

    # 更新软件源
    sudo apt update# 安装MySQL服务端
    sudo apt install mysql-server -y# 安全初始化
    sudo mysql_secure_installation

    初始化过程:

    - 是否设置验证密码? → 输入 `y`
    - 选择密码强度(建议选2)
    - 设置root密码 → 后续问题全选 `y`

    验证安装是否成功(4种方法)

    验证方式操作步骤预期结果
    1. 服务状态检查sudo systemctl status mysql显示 active (running)
    2. 登录MySQL控制台mysql -u root -p → 输入密码出现 mysql> 提示符
    3. 查看版本信息登录后执行 SELECT VERSION();显示MySQL版本号(如8.0.36)
    4. 查看数据库列表登录后执行 SHOW DATABASES;显示系统默认数据库列表

     

    基础配置(必做设置)

    修改root密码(首次登录后)
    ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
    FLUSH PRIVILEGES;  -- 刷新权限
     允许远程访问(可选)
    -- 1. 创建远程访问用户
    CREATE USER 'remote_user'@'%' IDENTIFIED BY 'securePass123!';-- 2. 授予所有权限
    GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;-- 3. 刷新权限
    FLUSH PRIVILEGES;
    配置文件优化(my.cnf)
    # 编辑配置文件(Linux/Mac路径:/etc/my.cnf)
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock# 关键优化参数
    max_connections=1000      # 最大连接数
    innodb_buffer_pool_size=1G # 缓存池大小(建议设内存的70%)
    default-authentication-plugin=mysql_native_password

    第一个数据库操作:从创建到查询

  5. 登录MySQL

    mysql -u root -p

    执行SQL命令

    -- 创建数据库
    CREATE DATABASE school_db;-- 使用数据库
    USE school_db;-- 创建学生表
    CREATE TABLE students (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(50) NOT NULL,age INT,class VARCHAR(20)
    );-- 插入数据
    INSERT INTO students (name, age, class) 
    VALUES ('张三', 18, '计算机1班'),('李四', 17, '数学2班');-- 查询数据
    SELECT * FROM students;

    结果预览

    +----+--------+-----+--------------+
    | id | name   | age | class        |
    +----+--------+-----+--------------+
    |  1 | 张三   |  18 | 计算机1班    |
    |  2 | 李四   |  17 | 数学2班      |
    +----+--------+-----+--------------+

    MySQL管理工具推荐

    工具名称类型特点下载地址
    MySQL Workbench官方GUI功能全面,支持ER图设计官网自带安装
    DBeaver免费支持多种数据库,界面友好DBeaver Community | Free Universal Database Tool
    phpMyAdminWeb版浏览器直接管理phpMyAdmin
    TablePlus收费简洁高效(Mac用户首选)TablePlus | Modern, Native Tool for Database Management

常见问题排查手册

  • 报错:Access denied for user 'root'@'localhost'
    → 重置root密码:

    sudo mysqld_safe --skip-grant-tables & 
    mysql -u root
    # 然后执行密码修改SQL

 服务无法启动(端口冲突)
→ 修改配置文件端口:

[mysqld]
port=3307  # 默认3306
  • 忘记root密码
    → Windows用户:

    1. 服务管理器中重启MySQL服务并添加 --init-file=C:\mysql-init.txt 参数

    2. 在指定文件写入 ALTER USER 密码修改语句

  • 中文乱码问题
    → 在my.cnf添加:

    [mysqld]
    character-set-server=utf8mb4
    collation-server=utf8mb4_unicode_ci

    下一步学习建议

  • SQL语法精要

    • SELECT查询条件(WHERE)

    • 表连接(JOIN)

    • 聚合函数(COUNT/SUM/AVG)

  • 数据库设计

    • 三大范式理论

    • 主键/外键关系

  • 性能优化

    • EXPLAIN分析查询

    • 索引创建原则

备份与恢复

# 备份整个数据库
mysqldump -u root -p --all-databases > backup.sql# 恢复数据库
mysql -u root -p < backup.sql

 

 核心记住

  • mysql -u 用户名 -p → 登录数据库

  • SHOW DATABASES; → 查看数据库列表

  • SOURCE 文件.sql; → 执行SQL脚本

动手实践:创建你的第一个学生管理系统数据库吧!


数据驱动世界

 

http://www.lqws.cn/news/597061.html

相关文章:

  • stm32l4系列启用看门狗后,调用HAL_IWDG_Refreh()就复位
  • HakcMyVM-Arroutada
  • java生成word文档
  • 飞算JavaAI:重构软件开发范式的智能引擎
  • ABB驱动系列SCYC51213 63911607C驱动板
  • java微服务-linux单机CPU接近100%优化
  • Python应用指南:利用高德地图API获取公交+地铁可达圈(二)
  • 再见 RAG?Gemini 2.0 Flash 刚刚 “杀死” 了它!
  • 学习面向对象
  • 第TR3周:Pytorch复现Transformer
  • 快速手搓一个MCP服务指南(九): FastMCP 服务器组合技术:构建模块化AI应用的终极方案
  • 【仿muduo库实现并发服务器】Poller模块
  • 基于中国印尼会计准则差异,中国企业在印尼推广ERP(SAP、Oracle)系统需要注意的细节
  • Pycharm命令行能运行,但绿色三角报错?
  • mac重复文件清理,摄影师同款清理方案
  • nosql项目:基于 Redis 哨兵模式的鲜花预订配送系统
  • 设计模式之组合模式
  • 将实时流的 H.264(视频)与 G.711A(音频)封装成 MP4 文件
  • 关于量子计算的一份介绍
  • 12【进程间通信——管道】
  • Vue 响应式数据传递:ref、reactive 与 Provide/Inject 完全指南
  • 基于 Three.js 与 WebGL 的商场全景 VR 导航系统源码级解析
  • 遥感云大数据在灾害、水体与湿地领域案例及GPT应用
  • 第八章:LeRobot摄像头配置与应用指南
  • 使用GeoServer发布地图shapefi(.shp)数据
  • Spring Bean的生命周期与作用域详解
  • Vue-17-前端框架Vue之应用基础集中式状态管理pinia(二)
  • AI智能体在用户行为数据分析中有哪些应用?
  • Android 网络全栈攻略(四)—— TCPIP 协议族与 HTTPS 协议
  • Linux基本命令篇 —— grep命令