MySQL数据库练习、刷题、巩固-带你走进MySQL的大门

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: MySQL数据库练习、刷题、巩固-带你走进MySQL的大门

带你走进MySQL的世界

本文对应MySQL_动力节点老杜--课后习题34题(随后发布)


从安装配置开始--MySQL入门!


下文会有MySQL-5.5版本安装教程


MySQL安装配置_其它版本可参照--MySQL配置教程-新旧版通用(点击进入)

http://mp.weixin.qq.com/s?__biz=Mzg2NDY3NjY5NA==&mid=2247485466&idx=1&sn=dc066e40b3a7ef1d1a659281e197a85c&chksm=ce64f623f9137f3579c8411c8b18de66d62c1cf4c68212a239e56c72a61c8bc6084b7be937b1&scene=21#wechat_redirect

在随后的34道作业题中,小编会发布相应的题目、题解及其拓展的知识


题中涵盖到的数据库表为 bjpowernode.sql


下文会对相应数据库进行详细说明


索奇之家  后台回复'老杜MySQL'  即可获得动力节点老杜资料及工具


铺垫、巩固

1、什么是数据库?什么是数据库管理系统?什么是SQL?他们之间的关系是什么?

数据库:


英文单词DataBase,简称DB。按照一定格式存储数据的一些文件的组合。


顾名思义:存储数据的仓库,实际上就是一堆文件。这些文件中存储了


具有特定格式的数据。


数据库管理系统:


DataBaseManagement,简称DBMS。


数据库管理系统是专门用来管理数据库中数据的,数据库管理系统可以


对数据库当中的数据进行增删改查。


常见的数据库管理系统:


MySQL、Oracle、MS SqlServer、DB2、sybase等....


SQL:结构化查询语言


程序员需要学习SQL语句,程序员通过编写SQL语句,然后DBMS负责执行SQL


语句,最终来完成数据库中数据的增删改查操作。


SQL是一套标准,程序员主要学习的就是SQL语句,这个SQL在mysql中可以使用,


同时在Oracle中也可以使用,在DB2中也可以使用。


三者之间的关系?


DBMS--执行--> SQL --操作--> DB


先安装数据库管理系统MySQL,然后学习SQL语句怎么写,编写SQL语句之后,DBMS


对SQL语句进行执行,最终来完成数据库的数据管理。


2、安装MySQL数据库管理系统。

以下为JDK5.5版本配置(后台回复老杜MySQL可领取)


如自己安装其它版本,可参考->MySQL配置教程-新旧版通用(点击进入)

http://mp.weixin.qq.com/s?__biz=Mzg2NDY3NjY5NA==&mid=2247485466&idx=1&sn=dc066e40b3a7ef1d1a659281e197a85c&chksm=ce64f623f9137f3579c8411c8b18de66d62c1cf4c68212a239e56c72a61c8bc6084b7be937b1&scene=21#wechat_redirect

jdk5.5版本安装:

第一步:先安装,选择“经典版”


第二步:需要进行MySQL数据库实例配置。


注意:一路下一步就行了!!!!!


需要注意的事项?

端口号:


端口号port是任何一个软件/应用都会有的,端口号是应用的唯一代表。


端口号通常和IP地址在一块,IP地址用来定位计算机的,端口号port


是用来定位计算机上某个服务的/某个应用的!


在同一台计算机上,端口号不能重复。具有唯一性。


mysql数据库启动的时候,这个服务占有的默认端口号是3306


这是大家都知道的事儿。记住。


字符编码方式?

设置mysql数据库的字符编码方式为 UTF8


一定要注意:先选中第3个单选按钮,然后再选择utf8字符集。


服务名称?

默认是:MySQL


不用改。


选择配置环境变量path:

如果没有选择怎么办?你可以手动配置


path=其它路径;C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin


如不会配置path可参考java如何配置环境变量:


java如何配置环境path (点击进入)

http://mp.weixin.qq.com/s?__biz=Mzg2NDY3NjY5NA==&mid=2247485128&idx=1&sn=d08838f4b1040702b675061f8409cb21&chksm=ce64f8f1f91371e7cd39d909bd49905d126952fefbd80152d458e45ef417611fc2cbc283f6f8&scene=21#wechat_redirect

mysql超级管理员用户名不能改,一定是:root


你需要设置mysql数据库超级管理员的密码。


设置密码的同时,可以激活root账户远程访问。


激活:表示root账号可以在外地登录。


不激活:表示root账号只能在本机上使用。


我这里选择激活了!


3、MySQL数据库的完美卸载!

第一步:双击安装包进行卸载删除。


第二步:删除目录:


把C:\ProgramData下面的MySQL目录干掉。


把C:\Program Files (x86)下面的MySQL目录干掉。


这样就卸载结束了!


4、看一下计算机上的服务,找一找MySQL的服务在哪里?

计算机-->右键-->管理-->服务和应用程序-->服务-->找mysql服务


MySQL的服务,默认是“启动”的状态,只有启动了mysql才能用。


默认情况下是“自动”启动,自动启动表示下一次重启操作系统的时候


自动启动该服务。


可以在服务上点击右键:


启动


重启服务


停止服务


...


还可以改变服务的默认配置:


服务上点击右键,属性,然后可以选择启动方式:


自动(延迟启动)


自动


手动


禁用


5、在windows操作系统当中,怎么使用命令来启动和关闭mysql服务呢?

语法:


net stop 服务名称;


net start 服务名称;


其它服务的启停都可以采用以上的命令。


6、mysql安装了,服务启动了,怎么使用客户端登录mysql数据库呢?

使用bin目录下的mysql.exe命令来连接mysql数据库服务器


本地登录:


C:\Users\Administrator>mysql -uroot -p123456
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 1
    Server version: 5.5.36 MySQL Community Server (GPL)
    Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    mysql>


7、mysql常用命令:

退出mysql :exit


     查看mysql中有哪些数据库?


注意:以分号结尾,分号是英文的分号。


show databases; 
  mysql> show databases;
  +--------------------+
| Database           |
  +--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
  +--------------------+


mysql默认自带了4个数据库。


   怎么选择使用某个数据库呢?

mysql> use test;
Database changed


表示正在使用一个名字叫做test的数据库。


怎么创建数据库呢?

mysql> create database bjpowernode;
    Query OK, 1 row affected (0.00 sec)
    mysql> show databases;
    +--------------------+
| Database           |
    +--------------------+
| information_schema |
| bjpowernode        |
| mysql              |
| performance_schema |
| test               |
    +--------------------+


   查看某个数据库下有哪些表?

mysql> show tables;

   查看mysql数据库的版本号:

mysql> select version();
    +-----------+
    | version() |
    +-----------+
    | 5.5.36    |
    +-----------+

   查看当前使用的是哪个数据库?

mysql> select database();
  +-------------+
| database()  |
  +-------------+
| bjpowernode |
  +-------------+
  mysql> show
    -> databases
    -> ;
  +--------------------+
| Database           |
  +--------------------+
| information_schema |
| bjpowernode        |
| mysql              |
| performance_schema |
| test               |
  +--------------------+


注意:mysql是不见“;”不执行,“;”表示结束!


8、数据库当中最基本的单元是表:table

9、关于SQL语句的分类?

SQL语句有很多,最好进行分门别类,这样更容易记忆。


分为:


DQL:


数据查询语言(凡是带有select关键字的都是查询语句)


select...


DML:


数据操作语言(凡是对表当中的数据进行增删改的都是DML)


insert delete update 只有这三个才会和事物有关系


insert 增


delete 删


update 改


这个主要是操作表中的数据data数据。


DDL:


数据定义语言


凡是带有create、drop、alter的都是DDL。


DDL主要操作的是表的结构。不是表中的数据。


create:新建,等同于增


drop:删除


alter:修改


这个增删改和DML不同,这个主要是对表结构进行操作。


TCL:


事务控制语言


包括:


事务提交:commit;


事务回滚:rollback;


DCL:


是数据控制语言。


例如:授权grant、撤销权限revoke....


10、导入一下提前准备好的数据:

bjpowernode.sql 这个文件中是为大家练习准备的数据库表。


怎么将sql文件中的数据导入呢?

mysql> source D:\course\03-MySQL\document\bjpowernode.sql


注意:不要出现中文

show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+


MySQL默认带的数据库

create database bjpowernode;
user bjpowernode;
source F:\BaiduNetdiskDownload\01-MySQL\bjpowernode.sql;


11、关于导入的这几张表?(要有印象,后面会用到)

 mysql> show tables;
+-----------------------+
| Tables_in_bjpowernode |
+-----------------------+
| dept                  |
| emp                   |
| salgrade              |
+-----------------------+

dept是部门表-department


emp是员工表-employee


salgrade 是工资等级表-salary grade


怎么查看表中的数据呢?

select * from 表名; //统一执行这个SQL语句。

mysql> select * from emp;//员工表


从emp表查询所有数据。


7ba4340e7017e14ebf4ac5c0c49960d1.png


mysql> select * from dept;//部门表

e13c50661f4cca2cb43de6643911781c.png


mysql> select * from salgrade;//工资等级表

b670e5fe0a08ad40f95cbe6d302a3579.png



相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
存储 JSON NoSQL
学习 MongoDB:打开强大的数据库技术大门
MongoDB 是一个基于分布式文件存储的文档数据库,由 C++ 编写,旨在为 Web 应用提供可扩展的高性能数据存储解决方案。它与 MySQL 类似,但使用文档结构而非表结构。核心概念包括:数据库(Database)、集合(Collection)、文档(Document)和字段(Field)。MongoDB 使用 BSON 格式存储数据,支持多种数据类型,如字符串、整数、数组等,并通过二进制编码实现高效存储和传输。BSON 文档结构类似 JSON,但更紧凑,适合网络传输。
70 15
|
1天前
|
缓存 关系型数据库 MySQL
【深入了解MySQL】优化查询性能与数据库设计的深度总结
本文详细介绍了MySQL查询优化和数据库设计技巧,涵盖基础优化、高级技巧及性能监控。
10 0
|
28天前
|
存储 Oracle 关系型数据库
数据库传奇:MySQL创世之父的两千金My、Maria
《数据库传奇:MySQL创世之父的两千金My、Maria》介绍了MySQL的发展历程及其分支MariaDB。MySQL由Michael Widenius等人于1994年创建,现归Oracle所有,广泛应用于阿里巴巴、腾讯等企业。2009年,Widenius因担心Oracle收购影响MySQL的开源性,创建了MariaDB,提供额外功能和改进。维基百科、Google等已逐步替换为MariaDB,以确保更好的性能和社区支持。掌握MariaDB作为备用方案,对未来发展至关重要。
56 3
|
28天前
|
安全 关系型数据库 MySQL
MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!
《MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!》介绍了MySQL中的三种关键日志:二进制日志(Binary Log)、重做日志(Redo Log)和撤销日志(Undo Log)。这些日志确保了数据库的ACID特性,即原子性、一致性、隔离性和持久性。Redo Log记录数据页的物理修改,保证事务持久性;Undo Log记录事务的逆操作,支持回滚和多版本并发控制(MVCC)。文章还详细对比了InnoDB和MyISAM存储引擎在事务支持、锁定机制、并发性等方面的差异,强调了InnoDB在高并发和事务处理中的优势。通过这些机制,MySQL能够在事务执行、崩溃和恢复过程中保持
66 3
|
28天前
|
SQL 关系型数据库 MySQL
数据库灾难应对:MySQL误删除数据的救赎之道,技巧get起来!之binlog
《数据库灾难应对:MySQL误删除数据的救赎之道,技巧get起来!之binlog》介绍了如何利用MySQL的二进制日志(Binlog)恢复误删除的数据。主要内容包括: 1. **启用二进制日志**:在`my.cnf`中配置`log-bin`并重启MySQL服务。 2. **查看二进制日志文件**:使用`SHOW VARIABLES LIKE 'log_%';`和`SHOW MASTER STATUS;`命令获取当前日志文件及位置。 3. **创建数据备份**:确保在恢复前已有备份,以防意外。 4. **导出二进制日志为SQL语句**:使用`mysqlbinlog`
86 2
|
1月前
|
关系型数据库 MySQL 数据库
Python处理数据库:MySQL与SQLite详解 | python小知识
本文详细介绍了如何使用Python操作MySQL和SQLite数据库,包括安装必要的库、连接数据库、执行增删改查等基本操作,适合初学者快速上手。
263 15
|
1月前
|
SQL 关系型数据库 MySQL
数据库数据恢复—Mysql数据库表记录丢失的数据恢复方案
Mysql数据库故障: Mysql数据库表记录丢失。 Mysql数据库故障表现: 1、Mysql数据库表中无任何数据或只有部分数据。 2、客户端无法查询到完整的信息。
|
1月前
|
关系型数据库 MySQL 数据库
数据库数据恢复—MYSQL数据库文件损坏的数据恢复案例
mysql数据库文件ibdata1、MYI、MYD损坏。 故障表现:1、数据库无法进行查询等操作;2、使用mysqlcheck和myisamchk无法修复数据库。
|
1月前
|
SQL 关系型数据库 MySQL
MySQL导入.sql文件后数据库乱码问题
本文分析了导入.sql文件后数据库备注出现乱码的原因,包括字符集不匹配、备注内容编码问题及MySQL版本或配置问题,并提供了详细的解决步骤,如检查和统一字符集设置、修改客户端连接方式、检查MySQL配置等,确保导入过程顺利。
|
2月前
|
关系型数据库 MySQL 数据库
GBase 数据库如何像MYSQL一样存放多行数据
GBase 数据库如何像MYSQL一样存放多行数据