冬季实战营 动手实战-MySQL数据库快速部署实践 领鼠标 云小宝

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS AI 助手,专业版
简介: 五期冬季实战,从入门到进阶,以最佳实践帮助开发者,快速云上实践,云上学习。体验有礼,点击前往:[https://developer.aliyun.com/adc/series/wintercamp]

image.png

云起实验室 冬季训练营(1.17-3.8)

可补卡!!!领云小宝
五期冬季实战,从入门到进阶,以最佳实践帮助开发者,快速云上实践,云上学习。
体验有礼,点击前往:https://developer.aliyun.com/adc/series/wintercamp
冬季实战营第一期:从零到一上手玩转云服务器
image.png
单期任务奖励:实战营技能证书+定制鼠标
三期任务奖励:全网首发冬奥限量版云小宝
五期任务奖励:冬季实战营奖牌+定制书包+无影试用

体验简介

本实验提供一个Linux系统。首先,安装mysql;然后,执行mysql的常用操作;最后,学习基本的SQL语句。

体验此场景后,你可以掌握的能力有:

  1. MySQL安装
  2. MySQL日常运维管理
  3. 基本SQL语句的使用

背景知识

业务背景
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle旗下产品。MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。

技术背景
与其他的大型数据库例如:Oracle、DB2、SQL Server等相比,MySQL 自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL 提供的功能已经绰绰有余,而且由于 MySQL 是开放源码软件,因此可以大大降低总体拥有成本。

Linux 作为操作系统,Apache 和 Nginx 作为 Web 服务器,MySQL 作为数据库,PHP/Perl/Python 作为服务器端脚本解释器。由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统,被业界称为 LAMP 或 LNMP 组合。

MySQL安装与配置

MySQL是一个关系型数据库管理系统,本步骤指导您如何在ECS实例上安装MySQL。

1.执行如下命令,更新YUM源。

rpm -Uvh  http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
  1. 执行如下命令,安装MySQL。
yum -y install mysql-community-server --nogpgcheck
  1. 执行如下命令,查看MySQL版本号。
mysql -V

返回结果如下,表示您已成功安装MySQL。

a087672818024936b5e4e1e5d29c7f3f.png

  1. 执行如下命令,启动MySQL服务。
systemctl start mysqld
  1. 执行如下命令,设置MySQL服务开机自启动。
systemctl enable mysqld
  1. 配置MySQL的root用户密码。

执行如下命令,查看/var/log/mysqld.log文件,获取root用户的初始密码。

grep 'temporary password' /var/log/mysqld.log

返回结果如下所示,您可以查看到root用户的初始密码。

a63c22d465b04626901611cad1a8e5ab.png

执行以下命令,使用root用户登录数据库。

mysql -uroot -p

返回结果如下所示,输入root用户的初始密码。(输入的密码是不会显示出来的)

78e135657d284b47a4321c012cc0c433.png

执行以下命令,修改MySQL的root用户的初始密码。

set global validate_password_policy=0;  #修改密码安全策略为低(只校验密码长度,至少8位)。
ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678';

执行以下命令,授予root用户远程管理权限。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678';

输入exit退出数据库。
379d871e4c3f4790ae057edea1dd33bc.png

  1. 执行以下命令,使用root用户登录数据库。
mysql -uroot -p12345678
  1. 执行如下命令,创建test数据库。
create database test;
  1. 执行如下命令,查看当前数据库列表。此时,可以看到三个数据库:information_schema ,mysql,performance_schema,sys,test 。
show databases;

注意:进入 mysql 之后,每条命令结尾都要有分号。

79d964a814b54d3a93f9df5bd35ff244.jpg

  1. 执行命令 use mysql;,连接 mysql 数据库。然后执行命令 show tables; ,查看 mysql 数据库中的数据表。使用命令 exit ,退出 MySQL 界面。
use mysql;
show tables; 
exit

course-58f7358de77242ec84379253522cbaac-section-23436074ffee4bb8a07ad154274f295b-content-image-1475050413464-IjBs5d.png

  1. 返回 Linux 界面,执行如下命令,将名为 test 的数据库备份到当前目录的 test.sql。界面显示 Enter password,输入 MySQL 数据库的登录密码 12345678 。根据备份的数据库大小,等待时间长短不同。完成后,使用命令 ll 查看备份文件,界面查看到备份文件 test.sql ,完成备份。

mysqldump -uroot -p test >test.sql
ll
course-58f7358de77242ec84379253522cbaac-section-23436074ffee4bb8a07ad154274f295b-content-image-1475050600272-6Q8aHw.png

  1. 返回 Linux 界面,执行如下命令,将 test.sql 导入数据库。界面显示 Enter password ,输入 MySQL 数据库的登录密码 12345678 。

说明:其中参数 -D 是指定数据库为test。

mysql -uroot -p -Dtest<test.sql

  1. 还有一种导入方法:输入命令:mysql -uroot -p12345678 ,进入 MySQL 数据库。输入 use test; ,连接数据库 test ,输入 source /root/test.sql; ,将 test.sql 导入数据库 test ,全部出现 Query OK ,则表示数据库导入成功。

mysql -uroot -p12345678
use test;
source /root/test.sql;
73340b0475124f7da5fa9578dffe5de7.jpg

常用 SQL

本小节将主要介绍基本的 SQL 语句,数据的增删查改等。

  1. 若当前不是在 Mysql 数据库的命令界面,请执行命令:mysql -uroot -p12345678 ,登录到 Mysql 数据库命令行界面。否则,请忽略此操作。

然后,在Mysql中,执行命令 use test; ,连接 test 数据库。界面提示 Database changed ,表示现在使用的数据库为 test 数据库。

use test;

1d45da3465324041a85b6b475a274802.jpg

  1. 执行命令 create table test1 (id int,name char(20)); ,创建一张表,表名为 test1 。test1 表有两列:id 和 name。其中,id 的数据类型为 int,name 的数据类型为 char,且字符长度为 20。

说明:mysql 命令执行完成,页面会提示 Query OK 。

create table test1 (id int,name char(20));

语法:CREATE TABLE 表名称 (列名称1 数据类型,列名称2 数据类型,列名称3 数据类型,....);

  1. 执行命令 insert into test1 values(1,"zhangsan"); ,插入一条数据:此条数据的第一列 id 的值为1,第二列 name 的值为zhangsan。
insert into test1 values(1,"zhangsan");

语法:INSERT INTO 表名称 VALUES (值1, 值2,....);

  1. 执行命令 select * from test1; ,查看 test1 表中的全部数据信息。此时,用户可以查看到新插入的一行数据: id 的值为 1 , name 的值为 zhangsan 。
select * from test1;

语法1:SELECT * FROM 表名称; //查询表中的所有列的数据信息

语法2:SELECT 列名称 FROM 表名称; //查询表中的指定列的数据信息

  1. 执行命令 update test1 set name = "lisi" where id =1; ,更新 test1 表中的数据,也就是,将所有 id 为 1 的 name 值均修改为 lisi 。
update test1 set name = "lisi" where id =1;
select * from test1;

语法:UPDATE 表名称 SET 列名 = 值 WHERE 表名称 = 值;

  1. 执行命令 delete from test1 where id =1; ,删除 test1 表中,所有 id 值为 1 的数据。
delete from test1 where id =1;
select * from test1;

语法:DELETE FROM 表名称 WHERE 列名称 = 值;

  1. 执行命令 drop table test1; 删除名为 test1 的数据表。
drop table test1;
show tables;

语法:DROP TABLE 表名称

  1. 执行命令 drop database test; ,删除名为 test 的数据库。
drop database test;
show databases;

语法:DROP DATABASE 数据库名称

请添加图片描述

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
9月前
|
负载均衡 算法 关系型数据库
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
本文聚焦 MySQL 集群架构中的负载均衡算法,阐述其重要性。详细介绍轮询、加权轮询、最少连接、加权最少连接、随机、源地址哈希等常用算法,分析各自优缺点及适用场景。并提供 Java 语言代码实现示例,助力直观理解。文章结构清晰,语言通俗易懂,对理解和应用负载均衡算法具有实用价值和参考价值。
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
|
4月前
|
存储 关系型数据库 MySQL
MySQL Docker 容器化部署全指南
MySQL是一款开源关系型数据库,广泛用于Web及企业应用。Docker容器化部署可解决环境不一致、依赖冲突问题,实现高效、隔离、轻量的MySQL服务运行,支持数据持久化与快速迁移,适用于开发、测试及生产环境。
754 4
|
6月前
|
关系型数据库 MySQL 数据库
为什么 MySQL 不推荐用 Docker 部署?
本文探讨了MySQL是否适合容器化的问题,分析了Docker容器在数据安全、性能瓶颈、状态管理及资源隔离等方面的挑战,并指出目前主流分布式数据库如TDSQL和OceanBase仍倾向于部署在物理机或KVM上。
332 0
|
9月前
|
Java 关系型数据库 MySQL
在Linux平台上进行JDK、Tomcat、MySQL的安装并部署后端项目
现在,你可以通过访问http://Your_IP:Tomcat_Port/Your_Project访问你的项目了。如果一切顺利,你将看到那绚烂的胜利之光照耀在你的项目之上!
473 41
|
9月前
|
开发框架 Java 关系型数据库
在Linux系统中安装JDK、Tomcat、MySQL以及部署J2EE后端接口
校验时,浏览器输入:http://[your_server_IP]:8080/myapp。如果你看到你的应用的欢迎页面,恭喜你,一切都已就绪。
600 17
|
9月前
|
Java 关系型数据库 MySQL
在Linux操作系统上设置JDK、Tomcat、MySQL以及J2EE后端接口的部署步骤
让我们总结一下,给你的Linux操作系统装备上最强的军队,需要先后装备好JDK的弓箭,布置好Tomcat的阵地,再把MySQL的物资原料准备好,最后部署好J2EE攻城车,那就准备好进军吧,你的Linux军团,无人可挡!
217 18
|
9月前
|
开发框架 关系型数据库 Java
Linux操作系统中JDK、Tomcat、MySQL的完整安装流程以及J2EE后端接口的部署
然后Tomcat会自动将其解压成一个名为ROOT的文件夹。重启Tomcat,让新“植物”适应新环境。访问http://localhost:8080/yourproject看到你的项目页面,说明“植物”种植成功。
280 10
|
存储 关系型数据库 MySQL
美团面试:MySQL为什么 不用 Docker部署?
45岁老架构师尼恩在读者交流群中分享了关于“MySQL为什么不推荐使用Docker部署”的深入分析。通过系统化的梳理,尼恩帮助读者理解为何大型MySQL数据库通常不使用Docker部署,主要涉及性能、管理复杂度和稳定性等方面的考量。文章详细解释了有状态容器的特点、Docker的资源隔离问题以及磁盘IO性能损耗,并提供了小型MySQL使用Docker的最佳实践。此外,尼恩还介绍了Share Nothing架构的优势及其应用场景,强调了配置管理和数据持久化的挑战。最后,尼恩建议读者参考《尼恩Java面试宝典PDF》以提升技术能力,更好地应对面试中的难题。
|
11月前
|
Ubuntu 关系型数据库 MySQL
容器技术实践:在Ubuntu上使用Docker安装MySQL的步骤。
通过以上的操作,你已经步入了Docker和MySQL的世界,享受了容器技术给你带来的便利。这个旅程中你可能会遇到各种挑战,但是只要你沿着我们划定的路线行进,你就一定可以达到目的地。这就是Ubuntu、Docker和MySQL的灵魂所在,它们为你开辟了一条通往新探索的道路,带你亲身感受到了技术的力量。欢迎在Ubuntu的广阔大海中探索,用Docker技术引领你的航行,随时准备感受新技术带来的震撼和乐趣。
433 16
|
5月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
430 158

推荐镜像

更多