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

MySQL基础入门:开启数据库之旅

目录

    • 一、MySQL简介
    • 二、MySQL的安装
      • (一)Windows系统
      • (二)Linux系统(以Ubuntu为例)
    • 三、MySQL的基本操作
      • (一)登录MySQL
      • (二)创建数据库
      • (三)创建表
      • (四)插入数据
      • (五)查询数据
      • (六)更新数据
      • (七)删除数据
    • 四、MySQL的数据类型
      • (一)数值类型
      • (二)字符串类型
      • (三)日期和时间类型
    • 五、MySQL的常用函数
      • (一)字符串函数
      • (二)数值函数
      • (三)日期和时间函数
    • 六、MySQL的备份与恢复
      • (一)备份数据库
      • (二)恢复数据库
    • 七、总结

一、MySQL简介

MySQL是一种开源的关系型数据库管理系统(RDBMS),它使用结构化查询语言(SQL)来管理数据。它广泛应用于各种应用程序中,从简单的网站到复杂的企业级系统。MySQL具有高性能、可靠性和易用性等特点,是全球最受欢迎的数据库之一。

二、MySQL的安装

(一)Windows系统

  1. 下载MySQL安装包
    • 访问MySQL官网(https://dev.mysql.com/downloads/mysql/),选择适合Windows系统的版本进行下载。
  2. 安装MySQL
    • 双击下载的安装包,按照安装向导的提示进行操作。在安装过程中,可以选择安装路径、配置类型等选项。一般推荐选择“Developer Default”配置类型,它会自动为你设置一些合理的参数。
    • 安装完成后,需要设置root用户的密码。这是数据库的超级管理员账号,拥有最高权限,一定要设置一个安全的密码,并且妥善保存。
  3. 启动MySQL服务
    • 安装完成后,MySQL服务会自动启动。你也可以通过“服务”管理器手动启动或停止MySQL服务。在Windows的“运行”窗口中输入“services.msc”,找到MySQL服务,右键点击选择“启动”或“停止”。

(二)Linux系统(以Ubuntu为例)

  1. 更新软件包列表
    sudo apt update
    
  2. 安装MySQL
    sudo apt install mysql-server
    
  3. 安全配置
    • 安装完成后,运行以下命令进行安全配置:
      sudo mysql_secure_installation
      
    • 按照提示设置root用户密码、移除匿名用户、禁止root用户远程登录等操作,以提高数据库的安全性。
  4. 启动MySQL服务
    • 可以通过以下命令启动、停止或重启MySQL服务:
      sudo systemctl start mysql
      sudo systemctl stop mysql
      sudo systemctl restart mysql
      

三、MySQL的基本操作

(一)登录MySQL

  • 在命令行中输入以下命令登录MySQL:
    mysql -u用户名 -p
    
    • 例如,使用root用户登录:
      mysql -uroot -p
      
    • 输入密码后,就可以进入MySQL的命令行界面了。

(二)创建数据库

  • 使用以下命令创建一个名为“testdb”的数据库:
    CREATE DATABASE testdb;
    
  • 查看所有数据库:
    SHOW DATABASES;
    
  • 选择一个数据库进行操作:
    USE testdb;
    

(三)创建表

  • 假设我们要创建一个名为“students”的表,用来存储学生信息,包括学号(id)、姓名(name)和年龄(age):
    CREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(50),age INT
    );
    
    • 这里,“id”字段被设置为主键(PRIMARY KEY),它在表中是唯一的,用于唯一标识每条记录。“name”字段是字符串类型,最大长度为50个字符。“age”字段是整数类型。
  • 查看表结构:
    DESCRIBE students;
    

(四)插入数据

  • 向“students”表中插入一条数据:
    INSERT INTO students (id, name, age) VALUES (1, '张三', 18);
    
  • 插入多条数据:
    INSERT INTO students (id, name, age) VALUES (2, '李四', 20), (3, '王五', 19);
    

(五)查询数据

  • 查询“students”表中的所有数据:
    SELECT * FROM students;
    
  • 查询特定列的数据:
    SELECT name, age FROM students;
    
  • 条件查询:
    • 查询年龄大于18的学生:
      SELECT * FROM students WHERE age > 18;
      
    • 查询名字为“张三”的学生:
      SELECT * FROM students WHERE name = '张三';
      

(六)更新数据

  • 将“students”表中id为1的学生年龄更新为20:
    UPDATE students SET age = 20 WHERE id = 1;
    

(七)删除数据

  • 删除“students”表中id为2的学生:
    DELETE FROM students WHERE id = 2;
    

四、MySQL的数据类型

(一)数值类型

  • INT:整数类型,用于存储整数。例如,存储学生的学号。
  • DECIMAL:定点数类型,用于存储精确的小数。例如,存储商品的价格。

(二)字符串类型

  • VARCHAR:可变长度的字符串类型,最大长度可以指定。例如,存储学生的姓名。
  • TEXT:用于存储较长的文本内容,比如文章内容。

(三)日期和时间类型

  • DATE:日期类型,格式为YYYY-MM-DD。例如,存储学生的出生日期。
  • DATETIME:日期和时间类型,格式为YYYY-MM-DD HH:MM:SS。例如,存储学生报名的时间。

五、MySQL的常用函数

(一)字符串函数

  • LENGTH():返回字符串的长度(以字节为单位)。
    SELECT LENGTH('张三');
    
  • CONCAT():将多个字符串连接成一个字符串。
    SELECT CONCAT('张', '三');
    

(二)数值函数

  • SUM():计算数值列的总和。
    SELECT SUM(age) FROM students;
    
  • AVG():计算数值列的平均值。
    SELECT AVG(age) FROM students;
    

(三)日期和时间函数

  • NOW():返回当前的日期和时间。
    SELECT NOW();
    
  • DATE_ADD():对日期或时间进行加法运算。
    SELECT DATE_ADD(NOW(), INTERVAL 1 YEAR);
    

六、MySQL的备份与恢复

(一)备份数据库

  • 使用以下命令备份“testdb”数据库:
    mysqldump -u用户名 -p testdb > testdb_backup.sql
    
    • 例如,使用root用户备份:
      mysqldump -uroot -p testdb > testdb_backup.sql
      
    • 输入密码后,数据库就会被备份到指定的文件中。

(二)恢复数据库

  • 使用以下命令恢复数据库:
    mysql -u用户名 -p testdb < testdb_backup.sql
    
    • 例如,使用root用户恢复:
      mysql -uroot -p testdb < testdb_backup.sql
      

七、总结

通过本文的介绍,你已经对MySQL有了一个初步的了解,包括它的安装、基本操作、数据类型、常用函数以及备份与恢复等内容。MySQL是一个功能强大的数据库管理系统,掌握它的基本使用方法是学习数据库技术的重要一步。随着你对MySQL的深入了解,你将能够更好地利用它来管理和分析数据,为各种应用程序提供支持。


文章转载自:

http://Ffd1YOq5.hkpyp.cn
http://5B79sbxJ.hkpyp.cn
http://gxT3WETP.hkpyp.cn
http://6yGBLsbo.hkpyp.cn
http://JE9WOV20.hkpyp.cn
http://VWF09tLx.hkpyp.cn
http://Eb1MhV0l.hkpyp.cn
http://c3AZib4a.hkpyp.cn
http://O6To5oLA.hkpyp.cn
http://HSji8DIn.hkpyp.cn
http://1lOIv38x.hkpyp.cn
http://ctb0QzuL.hkpyp.cn
http://By3xckfO.hkpyp.cn
http://ZH3k0lzB.hkpyp.cn
http://ToDsRNt1.hkpyp.cn
http://jwEN5GYZ.hkpyp.cn
http://T7ofAXEM.hkpyp.cn
http://Clf7ZP7N.hkpyp.cn
http://ssLAHftM.hkpyp.cn
http://y3Wo4fZD.hkpyp.cn
http://ah4WJB6g.hkpyp.cn
http://TGlV763N.hkpyp.cn
http://6vcM08dw.hkpyp.cn
http://8uDgCkGe.hkpyp.cn
http://tKkplQoU.hkpyp.cn
http://eErgTCCV.hkpyp.cn
http://lR2FR7Vr.hkpyp.cn
http://umh7jtMq.hkpyp.cn
http://Erf2Y1Ih.hkpyp.cn
http://nJYT3xH1.hkpyp.cn
http://www.dtcms.com/a/387310.html

相关文章:

  • C++开发者如何开发自己的第一个mac应用(xcode + XIB + Objective-C C++)
  • LabVIEW风洞测试系统稳定性措施
  • Spring Boot 深入剖析:SpringBoot的启动流程
  • 机器人工具标定-记录一下-待验证(没数据)
  • 1.0 Labview中事件结构在while循环中使用注意事项(超时时间)
  • 微服务通信
  • 重定向、命令行判断、管道、正则三剑客
  • 破垄断!东土科技与海光信息联合发布全国产化工控系统,筑牢工业安全新底座
  • 一场史诗级的冒险——Docker命令大航海!
  • 基于 Node.js 的后端框架:NestJS 和 Express(二)
  • 大数据时代时序数据库选型指南:为何Apache IoTDB成优选——从技术架构与行业实践深度剖析
  • HBase 实战:3 步掌握基于 Rowkey 的数据更新技巧
  • 【Android】Jetpack Media3 播放音频文件
  • 算法 --- 队列 + 宽搜(BFS)
  • 苹果手机怎么导出App数据目录,iOS文件管理、应用沙盒访问、日志缓存导出与性能调试实战(uni-app开发者指南)
  • Java 设计模式——策略模式:从 3 种写法到 SpringBoot 进阶
  • JVM:性能调优的理解
  • AR眼镜在巡检业务中的软件架构设计|阿法龙XR云平台
  • 活动预告 | Paraverse × Unity:Unity云XR串流——突破设备与平台限制
  • 第十四届蓝桥杯青少组C++选拔赛[2022.12.18]第二部分编程题(5、猴子拿桃)
  • 二维码辅助回桩之二维码识别
  • Mojo vs Python vs Rust,2025年搞AI,怎么学
  • 从软件工程角度谈企业管理
  • 【C语言】C 语言自定义类型:联合与枚举的基础解析
  • 模型部署:(五)安卓端部署Yolov8关键点检测项目全流程记录
  • 在业务应用中集成 go-commons,实现应用+系统双指标监控
  • ESP32-C3四种工作模式
  • ReactNative中实现可拖拽的温度计组件
  • react snippets
  • 基于Matlab高低频混合建模的大气湍流相位屏生成算法