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

MySQL数据库零基础入门教程:从安装配置到数据查询全掌握【MySQL系列】

第1章:认识MySQL

1.1 什么是MySQL?

MySQL是一种开源的关系型数据库管理系统(RDBMS),由瑞典MySQL AB公司开发,现由Oracle公司维护。它使用结构化查询语言(SQL)进行数据库的管理和操作,广泛应用于网站开发、数据分析等领域。

1.2 MySQL的特点

  • 开源免费:MySQL遵循GPL协议,用户可以自由使用和修改。
  • 跨平台支持:支持Windows、Linux、macOS等多种操作系统。
  • 高性能:适用于大规模数据处理,性能优越。
  • 易于使用:提供图形化工具和命令行工具,方便管理。

第2章:MySQL的安装与配置

2.1 Windows系统下的安装

2.1.1 下载MySQL安装包

选择适合Windows系统的安装包。

2.1.2 安装步骤
  1. 运行安装程序:双击下载的.msi安装文件,启动安装向导。
  2. 选择安装类型:推荐选择“Developer Default”,安装常用的组件。
  3. 配置服务器:设置服务器类型、端口号(默认3306)、字符集等。
  4. 设置密码:为root用户设置密码,确保安全性。
  5. 执行安装:点击“Execute”,开始安装过程。
  6. 完成安装:安装完成后,启动MySQL服务。

2.2 macOS系统下的安装

2.2.1 使用Homebrew安装

在终端中执行以下命令:

brew install mysql
2.2.2 启动MySQL服务
brew services start mysql
2.2.3 设置root用户密码
mysql_secure_installation

2.3 Linux系统下的安装(以Ubuntu为例)

2.3.1 更新软件包列表
sudo apt update
2.3.2 安装MySQL服务器
sudo apt install mysql-server
2.3.3 安全配置
sudo mysql_secure_installation

第3章:登录与使用MySQL

3.1 使用命令行登录

在终端或命令提示符中输入:

mysql -u root -p

输入密码后,即可进入MySQL命令行界面。

3.2 使用图形化工具登录

MySQL提供了图形化管理工具MySQL Workbench,用户可以通过该工具连接并管理数据库。


第4章:数据库和表的基础操作

4.1 创建数据库

CREATE DATABASE mydatabase;

4.2 查看数据库列表

SHOW DATABASES;

4.3 使用数据库

USE mydatabase;

4.4 创建数据表

CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(100),email VARCHAR(100)
);

4.5 查看数据表结构

DESCRIBE users;

第5章:基本的数据查询操作

5.1 插入数据

INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com');

5.2 查询数据

SELECT * FROM users;

5.3 条件查询

SELECT * FROM users WHERE name = 'Alice';

5.4 更新数据

UPDATE users SET email = 'alice@newdomain.com' WHERE name = 'Alice';

5.5 删除数据

DELETE FROM users WHERE name = 'Alice';

第6章:常用的SQL语句

6.1 排序查询

SELECT * FROM users ORDER BY name ASC;

6.2 分组查询

SELECT COUNT(*) FROM users GROUP BY email;

6.3 联合查询

SELECT name FROM users WHERE email LIKE '%@example.com';

第7章:备份与恢复

7.1 备份数据库

使用mysqldump工具:

mysqldump -u root -p mydatabase > mydatabase_backup.sql

7.2 恢复数据库

mysql -u root -p mydatabase < mydatabase_backup.sql

第8章:用户管理与权限设置

8.1 创建新用户

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';

8.2 授予权限

GRANT ALL PRIVILEGES ON mydatabase.* TO 'newuser'@'localhost';

8.3 撤销权限

REVOKE ALL PRIVILEGES ON mydatabase.* FROM 'newuser'@'localhost';

8.4 删除用户

DROP USER 'newuser'@'localhost';

第9章:常见问题与解决方案

9.1 无法登录MySQL

  • 问题:输入密码后提示“Access denied”。
  • 解决方案:检查用户名和密码是否正确,确保MySQL服务已启动。

9.2 忘记root密码

  • 问题:无法登录root账户。
  • 解决方案:重置root密码。
sudo service mysql stop
sudo mysqld_safe --skip-grant-tables &
mysql -u root

在MySQL命令行中执行:

FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';

更多推荐:MySQL数据库从0到拿捏系列

  1. MySQL数据库零基础入门教程:从安装配置到数据查询全掌握
    关键词:安装、登录、客户端、库表基础、简单查询

  2. MySQL数据表操作全指南:建表、修改、删除一步到位
    关键词:DDL语句、字段类型、主键/外键、约束、规范设计
    聚焦表结构的创建和维护,配合真实业务建表案例(如用户表、订单表)。

  3. MySQL增删改查基础教程:熟练掌握DML语句操作
    关键词:INSERT、UPDATE、DELETE、SELECT、WHERE、ORDER BY
    实战演练日常的数据库操作命令,重点讲解查询语句的条件与排序。

  4. MySQL高级查询技巧:分组、聚合、子查询与分页
    关键词:GROUP BY、HAVING、聚合函数、LIMIT、子查询
    向中级进阶,涵盖常见报表需求与分页列表的查询实现。

  5. MySQL多表查询详解:内连接、外连接、自连接通通搞懂
    关键词:JOIN、INNER JOIN、LEFT JOIN、UNION、自连接
    深度讲解表与表之间如何通过字段建立关联并进行数据整合。

  6. MySQL索引与性能优化入门:让查询提速的秘密武器
    关键词:索引原理、EXPLAIN、慢查询、查询优化
    开启性能优化之路,适合准备应对数据量增长或面试的人。

  7. MySQL事务与锁机制详解:确保数据一致性的关键
    关键词:事务四大特性、锁类型、死锁案例、隔离级别
    涉及电商、支付系统等对数据一致性要求高的业务场景。

  8. MySQL项目实战演练:搭建用户管理系统的完整数据库结构
    关键词:业务建模、表关系设计、数据初始化、查询场景
    以实战带动知识回顾,模拟真实业务项目,整合前面所学内容。

相关文章:

MySQL数据库零基础入门教程:从安装配置到数据查询全掌握【MySQL系列】

第1章&#xff1a;认识MySQL 1.1 什么是MySQL&#xff1f; MySQL是一种开源的关系型数据库管理系统&#xff08;RDBMS&#xff09;&#xff0c;由瑞典MySQL AB公司开发&#xff0c;现由Oracle公司维护。它使用结构化查询语言&#xff08;SQL&#xff09;进行数据库的管理和操…...

动态规划(7):背包问题

引言 背包问题是动态规划中最经典、最重要的问题类型之一,它不仅在算法竞赛中频繁出现,也在实际应用中有着广泛的用途。从资源分配到投资组合优化,从生产计划到网络路由,背包问题的思想几乎无处不在。正因如此,背包问题被誉为动态规划的"必修课",掌握背包问题…...

谷歌浏览器Google Chrome v137.0.7151.41 中文版本版+插件 v1.11.1

一、软件介绍 这个版本解压就可以用&#xff0c;界面是中文的。 保留了核心功能&#xff0c; 二、软件特点 便携性 &#xff1a;解压即可使用&#xff0c;不想用了直接删掉整个文件夹。 增强功能 &#xff1a;通过Chrome增强软件劫持补丁chromev1.11.1 x64 (version.dll)实现多…...

《深入解析UART协议及其硬件实现》-- 第三篇:UART ASIC实现优化与低功耗设计

第三篇&#xff1a;UART ASIC实现优化与低功耗设计 1. ASIC与FPGA设计差异 1.1 标准单元库选型 库类型对设计的影响 &#xff1a; 高性能库&#xff08;High-Speed&#xff09; &#xff1a;使用低阈值电压晶体管&#xff0c;速度快但漏电功耗高&#xff0c;适合关键路径优化…...

Hadoop常用端口号和配置文件

常用端口号有&#xff1a; hadoop2.x Hadoop3.x 访问HDFS端口 50070 9870 访问MR执行情况端口 8088 8088 历史服务器 19888 19888 客户端访问集群端口 9000 8020 常用配置文件 hadoop2.x core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-si…...

Apache Paimon:存储结构、写入及其源码分析

Apache Paimon (此前称为 Flink Table Store)是一种流式数据湖存储技术&#xff0c;采用 LSM&#xff08;Log-Structured Merge-tree&#xff09;树结构来存储数据&#xff0c;支持高吞吐、低延迟的数据摄入和实时查询&#xff0c;尤其适用于流式和批量统一的场景。 1. 创建表…...

19、Python字符串高阶实战:转义字符深度解析、高效拼接与输入处理技巧

适合人群&#xff1a;零基础自学者 | 编程小白快速入门 阅读时长&#xff1a;约6分钟 文章目录 一、问题&#xff1a;Python的转义字符&#xff1f;1、例子1&#xff1a;快递地址格式化打印2、答案&#xff1a;&#xff08;1&#xff09;转义字符 二、问题&#xff1a;Python的…...

国芯思辰| 同步降压转换器CN2020应用于智能电视,替换LMR33620

在智能电视不断向高画质、多功能、智能化发展的当下&#xff0c;其内部电源管理系统的性能至关重要。同步降压转换器可以为智能电视提供稳定、高效的运行。 国芯思辰CN2020是一款脉宽调制式同步降压转换器。内部集成两个功率MOS管&#xff0c;在4.5~18V宽输入电压范围内可以持…...

6个月Python学习计划 Day 8 - Python 函数基础

第一周 Day 1 - Python 基础入门 & 开发环境搭建 Day 2 - 条件判断、用户输入、格式化输出 Day 3 - 循环语句 range 函数 Day 4 - 列表 & 元组基础 Day 5 - 字典&#xff08;dict&#xff09;与集合&#xff08;set&#xff09; Day 6 - 综合实战&#xff1a;学生信息…...

DeepSeek 提示词大全

目录 前言一、提示词基础理论 什么是提示词提示词的类型提示词的基本结构 二、提示词设计原则 明确指令结构化表达情境化需求渐进式引导边界与限制 三、场景化提示词模板 写作创作类角色扮演类信息提取类代码编程类教育学习类商业营销类生活助手类 四、提示词优化技巧 迭代式优…...

俄罗斯无人机自主任务规划!UAV-CodeAgents:基于多智能体ReAct和视觉语言推理的可扩展无人机任务规划

作者&#xff1a;Oleg Sautenkov 1 ^{1} 1, Yasheerah Yaqoot 1 ^{1} 1, Muhammad Ahsan Mustafa 1 ^{1} 1, Faryal Batool 1 ^{1} 1, Jeffrin Sam 1 ^{1} 1, Artem Lykov 1 ^{1} 1, Chih-Yung Wen 2 ^{2} 2, and Dzmitry Tsetserukou 1 ^{1} 1单位&#xff1a; 1 ^{1} 1斯科尔…...

结构性设计模式之Bridge(桥接)

结构性设计模式之Bridge&#xff08;桥接&#xff09; 摘要 桥接模式是一种结构性设计模式&#xff0c;其核心思想是将抽象部分与实现部分分离&#xff0c;使二者能够独立变化。本文通过汽车产品生产案例&#xff08;产品A/B与颜色红/蓝/黄&#xff09;展示了桥接模式的应用&…...

CSS篇-1

1. CSS 有哪些基本选择器&#xff1f;它们的权重是如何表示的&#xff1f; 这是一个关于 CSS 基础且极其重要的问题&#xff0c;因为它直接关系到我们如何精准地控制页面元素的样式&#xff0c;以及在样式冲突时浏览器如何决定哪个样式生效。理解 CSS 选择器及其权重&#xff…...

Android 16系统源码_无障碍辅助(一)认识无障碍服务

前言 Android 的无障碍辅助功能&#xff08;Accessibility&#xff09;是一套专为残障用户或特殊场景设计的核心技术框架&#xff0c;旨在让所有用户都能便捷地操作设备。其功能覆盖视觉、听觉、运动能力和认知障碍支持&#xff0c;同时为开发者提供标准化 API 以实现应用适配…...

分布式数据库备份实践

在分布式备份中可以采取两种方式进行备份&#xff0c;一种是采用手动编写backup.yml文件进行备份&#xff0c;另外一种是吧备份过程交给备份工具自动执行。如果需要个性化进行备份&#xff0c;建议采用手动编写备份文件方式进行备份。 以下是针对两种备份方式的实践&#xff1a…...

如何发布npm包?

如何发布npm包&#xff1f; 1. 注册账号[npm官网](https://www.npmjs.com/)2. 检查 npm 源是否在官方 npm 仓库&#xff0c;如果不在&#xff0c;进行切换3. 检查4. 打包配置5. 发布6. 使用错误&#xff1a;版本更新命令 1. 注册账号npm官网 2. 检查 npm 源是否在官方 npm 仓库…...

鸿蒙---使用真机模拟器的时候,图片不加载问题

使用真机模拟器的时候&#xff0c;图片不加载问题 解决方案&#xff1a; 1&#xff0c;找到 module.json5 文件&#xff0c;路径 entry -> src -> main -> module.json5 2&#xff0c;在module.json5 文件中&#xff0c;开头的’module’中添加 "requestPermiss…...

实验设计与分析(第6版,Montgomery)第5章析因设计引导5.7节思考题5.6 R语言解题

本文是实验设计与分析&#xff08;第6版&#xff0c;Montgomery著&#xff0c;傅珏生译) 第5章析因设计引导5.7节思考题5.6 R语言解题。主要涉及方差分析&#xff0c;正态假设检验&#xff0c;残差分析&#xff0c;交互作用图&#xff0c;等值线图。 dataframe <-data.frame…...

.NET 8使用AOT发布ASP.NET Core应用

.NET 8 使用 AOT 发布 ASP.NET Core 应用 一、AOT 编译简介 在 .NET 开发中&#xff0c;编译方式有多种&#xff0c;其中 AOT&#xff08;Ahead-Of-Time&#xff09;编译是一种区别于传统 JIT&#xff08;Just-In-Time&#xff09;编译的方式。传统的 JIT 编译是在 .NET 应用…...

OpenCV计算机视觉实战(8)——图像滤波详解

OpenCV计算机视觉实战&#xff08;8&#xff09;——图像滤波详解 0. 前言1. 线性滤波1.1 均值滤波1.2 高斯滤波1.3 拉普拉斯滤波1.4 Sobel 滤波 2. 非线性滤波3. 自定义卷积核小结系列链接 0. 前言 在本文中&#xff0c;我们将深入探索线性与非线性滤波的算法原理、性能优化及…...

Docker 前端镜像容器部署指南

1. 编写 Dockerfile 文件 # 使用轻量级的 Nginx Alpine 作为基础镜像 FROM nginx:alpine# 设置工作目录 WORKDIR /usr/share/nginx/html# 删除默认的 Nginx 静态文件 RUN rm -rf ./*# 复制本地 dist 目录下的文件到容器中 COPY ./dist /usr/share/nginx/html# 暴露容器端口 EX…...

OpenAI大模型不听人类指令事件的技术分析与安全影响

OpenAI大模型不听人类指令事件的技术分析与安全影响 OpenAI大模型o3确实存在不遵从人类关闭指令的现象&#xff0c;这一行为已被第三方安全机构验证&#xff0c;但其本质是技术缺陷而非AI意识觉醒。帕利塞德研究所的测试显示&#xff0c;在100次实验中o3有7次成功绕过关闭指令…...

图神经网络实战——图的可视化

图神经网络实战——图的可视化 0. 前言1. networkx2. Gephi相关链接0. 前言 图结构可通过图形化方式直观呈现。节点通常用圆形表示,边则用连接线表示。 然而当节点和边数量增加时,绘制清晰的图形表示可能会变得相当困难,这主要源于节点在二维坐标系中的布局问题。对于包含数…...

自动化安全脚本学习

1.目录扫描器 目标&#xff1a;使用python编写一个自动化目录扫描工具&#xff0c;实现简单信息收集&#xff0c;判断目标网站是否存在常见路径。 import requests #用于发HTTP请求 from concurrent.futures import ThreadPoolExecutor #实现多线程扫描# 扫描目标 target h…...

github公开项目爬取

import requestsdef search_github_repositories(keyword, tokenNone, languageNone, max_results1000):"""通过 GitHub API 搜索仓库&#xff0c;支持分页获取所有结果&#xff08;最多 1000 条&#xff09;:param keyword: 搜索关键词:param token: GitHub To…...

用豆包写单元测试

用豆包写单元测试&#xff0c; 输入 vue 模板内容&#xff0c;输入 参考vue模板内容写一个单元测试要求用jest.mock实现构造完成&#xff0c;修复bug。npm run test:unit – tests/unit/views/xxx/xxx.spec.js看下 % Stmts 语句覆盖率&#xff1a;执行到的代码语句占总语句的比…...

传输层协议TCP(上)

上一篇https://blog.csdn.net/Small_entreprene/article/details/148143494?fromshareblogdetail&sharetypeblogdetail&sharerId148143494&sharereferPC&sharesourceSmall_entreprene&sharefromfrom_link 上文学习了传输层的协议之一UDP&#xff0c;接下来…...

Windows下安装并使用kubectl查看K8S日志

【1】安装kubectl 官网文档&#xff1a;https://kubernetes.io/zh-cn/docs/tasks/tools/install-kubectl-windows/ 下载后得到 kubectl.exe&#xff0c;放到一个目录下&#xff0c;然后配置环境变量。 此时CMD 进入DOS命令窗口 kubectl version【2】配置config文件 其实就是…...

Hive 分区详解:从基础概念到实战应用

一、为什么要分区&#xff1f; 1.将大规模数据按规则&#xff08;如时间、地域&#xff09;划分到不同目录&#xff0c;提升数据组织性。 2.通过分区过滤&#xff0c;减少扫描数据量&#xff0c;显著提升查询效率。 3.不同分区可对应不同业务线或权限&#xff0c;增强数据隔…...

Android studio进阶开发(六)--如何用真机通过okhttp连接服务器

我们学过了如何通过okhttp查询网络上已经发布的网页&#xff0c;但我们还需要在做全栈时保证前后端能够交互。 前要课程 okhttp的使用 真机端口连接 安全认证 由于http的安全性较差&#xff0c;在没有安全协议的情况下&#xff0c;使用自己的后端连接会报错&#xff0c;所以…...