冬季实战营第三期《MySQL数据库进阶实战》

MySQL数据库快速部署实践

1. 创建资源

在页面左侧,单击 云产品资源 下拉列表,查看本次实验所需资源。
单击屏幕右侧 创建资源 ,免费创建当前实验所需云产品资源。
说明:

资源创建过程需要1~3分钟。完成实验资源的创建后,您可以在 云产品资源 列表查看已创建的资源信息,例如:IP地址、子用户名称和子用户密码等。

冬季实战营第三期《MySQL数据库进阶实战》

2. MySQL安装与配置

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

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

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

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

  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用户的初始密码。

执行以下命令,使用root用户登录数据库。
mysql -uroot -p
返回结果如下所示,输入root用户的初始密码。

执行以下命令,修改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退出数据库。

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

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

  1. 执行命令 use mysql;,连接 mysql 数据库。然后执行命令 show tables; ,查看 mysql 数据库中的数据表。使用命令 exit ,退出 MySQL 界面。
use mysql;
show tables; 
exit
  1. 返回 Linux 界面,执行如下命令,将名为 test 的数据库备份到当前目录的 test.sql。界面显示 Enter password,输入 MySQL 数据库的登录密码 12345678 。根据备份的数据库大小,等待时间长短不同。完成后,使用命令 ll 查看备份文件,界面查看到备份文件 test.sql ,完成备份。
mysqldump -uroot -p test >test.sql
  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;

3. 常用SQL

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

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

use test;
  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 数据库名称

冬季实战营第三期《MySQL数据库进阶实战》

如何在云端创建MySQL数据库(数据库上云实战

1. 创建资源

在实验开始之前,您需要创建相关实验资源。

1.在实验室页面,单击创建资源。

2.(可选)在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如IP地址、用户信息等)。

冬季实战营第三期《MySQL数据库进阶实战》

2. 现有数据库查看

  1. 点击右侧 ,切换至Web Terminal,远程登录到 云产品资源 中的 MySQL源数据库 ECS实例。
  2. 运行如下命令,登录到ECS实例的MySQL数据库:
mysql -u root -p123456
  1. 通过如下操作,查看源数据库bakery、其中的表customer和product,以及表中的数据。

1)执行如下命令,查看数据库信息。

show databases;

2)执行如下命令,切换数据库为bakery:

use bakery;

3)执行如下命令,查看表中数据:

show columns from customer;
show columns from product; 
select * from customer;
select * from product;

3. 上云迁移

  1. 首先,通过如下操作步骤,登录到阿里云RDS管理控制台:

1)点击右侧 图标,切换到远程桌面操作界面。

2)双击打开虚拟桌面 FireFox ESR浏览器,在RAM用户登录框中点击 下一步,复制 云产品资源 列表中 子用户密码 粘贴(lx shell粘贴快捷键ctrl+shift+v,其他地方粘贴是ctrl+v)到浏览器 RAM用户登录界面,即可登录当前子账号。

3)顶部导航栏处点击【产品与服务】,在主页面的【数据库】条目下找到【云数据库RDS版】,点击进入阿里云RDS管理控制台。

  1. 点击左侧的【实例列表】,在实例列表页面,选择云产品资源提供的 地域,然后点击目标实例右侧的【管理】进入RDS实例的管理控制台。
  2. 通过如下步骤,进入数据库账号创建页面:

1)在RDS实例的管理页面,点击左侧栏的【账号管理】,进入数据库账号管理页面。

2)在【用户账号】页面,点击左侧的【创建账号】。

  1. 填写如下信息,完成数据库账号创建:

1)数据库账号:请根据 输入框 下端的 命名规则 ,输入 数据库账号名称,例如:lab_user 。

2)账号类型:选择【普通账号】。

3)密码 :请根据 输入框 下端的 密码规则 ,输入 密码,例如:Passw0rd 。

4)确认密码:再次输入创建的密码。

5)完成如上信息后,点击【确定】。

6)返回 账号管理 的 用户账号 ,查看到新建账号 lab_user 的 状态 为 已激活 。

  1. 通过如下操作步骤,进入数据库创建页面:

1)点击左侧栏的【数据库管理】,进入数据库管理页面。

2)在右侧的【数据库管理】页面,点击左上角的【创建数据库】,进入创建页面。

  1. 在弹出的创建页面中,添加如下信息:

1)数据库(DB)名称:请根据 输入框 下端的 命名规则 ,输入 数据库名称,例如:lab_db 。

2)支持字符集:默认设为 utf8 。

3)授权帐号:选择新建数据库账号,例如lab_user。

4)完成如上配置信息后,点击底部的【创建】,完成数据库的创建。

5)在【数据库管理】页面中,等待1分钟左右,可以查看到数据库 lab_db 的 数据库状态 为 运行中 ,且 绑定账号 为 新建数据库账号 lab_user。

  1. 进入数据传输服务DTS。

1)复制下方地址,在FireFox浏览器打开新页签,粘贴并访问数据传输控制台。

https://dts.console.aliyun.com/

2)在左侧控制台,单击数据迁移。

  1. 配置迁移任务,按照如下步骤,输入 源库信息 的配置信息:

实例类型:选择 有公网IP的自建数据库 。

实例地区: 选择 云产品资源 中分配的 地域 ,例如:华东1 。
数据库类型:选择 MySQL 。

主机名或IP地址:输入 云产品资源 中分配的 MySQL源数据库 ECS实例的 弹性IP。

端口:使用默认端口号 3306

数据库账号:输入ECS上自建MySQL的 数据库账号 ,root;数据库密码:自建MySQL的访问密码,123456

完成如上配置后,点击右侧的 【测试连接】 ,测试自建MySQL数据库的连通性,若显示 测试通过 ,证明连接成功。否则,请检查如上配置信息是否正确。

  1. 按照如下步骤,完成 目标库信息 的配置信息:

1)实例类型:选择 RDS实例

2)实例地区:选择 实验资源 中分配的 地域 ,例如:华东1

3)RDS实例ID :选择 实验资源 中提供的 目标数据库 的 实例ID

4)数据库账号:输入RDS实例中新建的 数据库账号 lab_user ;数据库密码:新建数据库的密码 Passw0rd 。

5)完成如上配置后,点击右侧的 测试链接 ,测试RDS账号的连通性,若显示 测试通过 ,证明连接成功。否则,请检查如上配置信息是否正确。

6)完成如上的配置后,点击右下角的【 授权白名单并进入下一步 】。

  1. 通过如下步骤,配置迁移任务的 迁移类型及列表:

1)点击左侧 迁移对象 中的本地MySQL数据库中的bakery

2)点击 >

3)数据库 bakery 移动到 已选择对象 的列表中。

4)完成如上配置后,点击右下角的【 预检查并启动】 。

  1. 等待30秒钟左右,完成预检查,检查结果为 预检查通过100% ,点击 【下一步】 。

说明:若预检查未通过,请根据错误提示和如上的操作步骤,核对迁移任务的配置是否正确。

  1. 此时,页面迁移任务的状态为 迁移中 ,等待3-4分钟,状态变为 已完成。

MySQL数据库基础

1. 创建资源

在实验室页面,单击创建资源。
(可选)在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如IP地址、用户信息等)。

说明 资源创建过程需要1~3分钟。

2. 数据库启动与连接

数据库启动与连接
本小节主要介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL。

  1. 通过如下操作步骤,登录阿里云管理控制台,并进入云数据库RDS实例的管理页面。

1) 双击打开桌面 FireFox ESR浏览器,在RAM用户登录框中点击 下一步,复制 云产品资源 列表中 子用户密码 粘贴(lx shell粘贴快捷键ctrl+shift+v,其他地方粘贴是ctrl+v)到浏览器 RAM用户登录界面,即可登录当前子账号。

2)复制下方地址,在FireFox浏览器打开新页签,粘贴并访问RDS管理控制台。

https://rdsnext.console.aliyun.com/

3)在左侧导航栏,单击实例列表。

冬季实战营第三期《MySQL数据库进阶实战》

4)在【实例列表】页面中,首先,选择 云产品资源 中提供的 地域,然后单击已创建的RDS实例ID,进入实例的管理页面。

  1. 在实例详情页,单击左侧导航栏的【账号管理】,然后单击【创建账号】。
  2. 参考说明配置账号信息,然后单击【确定】。
  • 数据库账号:输入数据库账号名称,例如:test_user
  • 账号类型:此处选择高级权限账号
  • 密码:设置账号密码,例如:Password1213
  • 确认密码:再次输入密码
  1. 在实例详情页,单击左侧导航栏的【数据库管理】,然后单击【创建数据库】。
  2. 参考说明配置数据库信息,然后单击【创建】。
  • 数据库(DB)名称:输入数据库名称,例如:user_db
  • 支持字符集:默认设为utf8
  • 备注说明:非必填。用于备注该数据库的相关信息,便于后续数据库管理,最多支持256个字符
  1. 在数据库管理页面,单击页面右上方的【登录数据库】。
  2. 在输入框中,输入刚才创建的用户名和密码,单击【登录】。

登录成功,进入数据管理服务系统DMS。

冬季实战营第三期《MySQL数据库进阶实战》

3. 数据库表操作

数据库表操作
本小节主要介绍对数据库表的基本操作,其中包括新增、删除、更新和重命名等。

  1. 在DMS控制台上方,选择创建好的数据库user_db,然后单击【SQL操作】 > 【SQL窗口】

冬季实战营第三期《MySQL数据库进阶实战》

  1. 使用CREATE TABLE语句创建一个数据表。将以下语句复制到SQLConsole页签中,然后单击【执行】。
CREATE TABLE `USER` (
  `user_id` int(128) NOT NULL AUTO_INCREMENT,
  `name` varchar(64) NOT NULL,
  `age` int(11) DEFAULT NULL,
  PRIMARY KEY (`user_id`)
) ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci;

执行成功后,单击【刷新】查看创建的数据表。

  1. 使用ALTER TABLE语句更新数据表。将以下语句复制到SQLConsole页签中,然后单击执行。

在年龄age列后面,为USER表新增一列性别sex,0代表女,1代表男。

ALTER TABLE user ADD COLUMN sex tinyint(1) NOT NULL COMMENT 'sex,woman:0,man:1' AFTER `age`;
  1. 使用RENAME TABLE语句对数据表重命名。将以下语句复制到SQLConsole页签中,然后单击执行。

修改表名user为student。

RENAME TABLE USER TO student;

语句格式:

RENAME TABLE table_name_a TO table_name_b;
  1. 使用DROP TABLE语句删除数据表。将以下语句复制到SQLConsole页签中,然后单击执行。

说明:此操作不能撤销,请谨慎操作。

删除学生表。

DROP TABLE student;

语句格式:

DROP TABLE table_name;

4. 数据操作

数据操作
本小节主要为大家介绍MySQL中常用的数据查询、删除、更新、插入等基本操作。

  1. 使用CREATE TABLE语句创建一个数据表。将以下语句复制到SQLConsole页签中,然后单击【执行】。
CREATE TABLE `user` (
 `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',
 `name` varchar(32) DEFAULT NULL COMMENT 'name',
 `age` int(11) DEFAULT NULL COMMENT 'age',
 `address` varchar(32) DEFAULT NULL COMMENT 'address',
 `sex` tinyint(1) DEFAULT NULL COMMENT 'sex,woman:0,man:1',
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

执行成功后,单击【刷新】查看创建的数据表。

  1. 插入数据

插入语句说明:

  • table_name(col_name,...)中的字段名列表必须和values(expr,...)字段值列表一致。
  • 如果数据是字符型,必须使用单引号或者双引号。
  • 被AUTO_INCREMENT标记的自动递增的主键,在插入数据时,可以不设置值。

将以下SQL语句复制到SQLConsole页签中,然后单击【执行】。

INSERT INTO USER
       (name, age, address, sex)
VALUES
       ('zhangsan', 21, 'jiangxi', 0),
       ('lisi', 22, 'hubei', 0),
       ('wangwu', 23, 'hunan', 0),
       ('lilei', 24, 'henan', 1),
       ('hanmeimei', 25, 'hebei', 1),
       ('xiaoming', 26, 'shandong', 1),
       ('xiaoli', 27, 'shanxi', 1) ;
  1. 查询数据

查询语句格式:

SELECT col_name,...
  FROM table_name
 WHERE where_condition
 GROUP BY col_name,...
HAVING where_condition
 ORDER BY col_name,...
 LIMIT offset,row_count

将以下SQL语句复制到SQLConsole页签中,然后单击【执行】。

SELECT id,name,age,address,sex FROM user;
  1. 更新数据

更新语句格式:

UPDATE table_name SET col_name=expr,... WHERE where_condition

将以下SQL语句复制到SQLConsole页签中,然后单击【执行】。

UPDATE `user` SET `age` = 28,`address` = 'sichuan' WHERE `name` = 'xiaoming' ;
  1. 删除数据

删除语句格式:

DELETE FROM table_name WHERE where_condition

将以下SQL语句复制到SQLConsole页签中,然后单击【执行】。

DELETE FROM `user` WHERE `name` = 'xiaoming' ;

使用ECS和RDS搭建个人博客

1. 创建资源

开始实验之前,您需要先创建ECS和RDS资源。
1、在实验室页面,单击创建资源。

2、(可选)在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如IP地址、用户信息等)。

说明 :资源创建过程需要1~3分钟。

2. 创建数据库账号和密码

本节需要使用左侧资源栏提供的子账号登录信息登录阿里云RDS控制台,然后在子账号RDS控制台创建数据库和数据库用户。

1、双击打开虚拟桌面的Firefox ESR浏览器。

2、在RAM用户登录框中单击下一步,并复制粘贴页面左上角的子用户密码到用户密码输入框,点击登录。

3、复制下方地址,在Firefox ESR浏览器打开新页签,粘贴并访问RDS管理控制台。

https://rdsnext.console.aliyun.com/

  1. 单击左侧 [实例列表 ],然后根据资源栏提供的云产品地区选择云产品资源提供的地域。例如:华东 2 (上海)。
  2. 在 实例列表页 选择目标实例,在实例右侧操作列,单击 [管理],进入RDS实例详情页。
  3. 创建数据库账号。

a. 单击左侧导航栏账号管理,然后单击创建账号。

b. 参考说明配置账号信息,然后单击确定。

  • 数据库账号:输入数据库账号名称,例如:test_user
  • 账号类型:此处选择普通账号
  • 密码:设置账号密码,例如:Password1213
  • 确认密码:再次输入密码
  1. 创建数据库。

a. 在实例详情页,单击左侧导航栏的 [数据库管理] ,然后单击 [创建数据库] 。

b. 参考说明配置数据库信息,然后单击 [创建 ]。

  • 数据库(DB)名称:输入数据库名称,例如:wordpress
  • 支持字符集:默认设为utf8
  • 授权账号:选择上一步新建的数据库账号 test_user
  • 账号类型:默认设置为读写
  • 备注说明:非必填。用于备注该数据库的相关信息,便于后续数据库管理,最多支持256个字符

3. 部署环境

本教程使用Apache作为后端服务器,本节介绍安装Apache服务及其扩展包、以及安装PHP程序。

  1. 在实验室页面右侧,单击单击 图标,切换至Web Terminal。
  2. 在ECS服务器上,执行以下命令,安装Apache服务及其扩展包。
yum -y install httpd httpd-manual mod_ssl mod_perl mod_auth_mysql

返回类似如下图结果则表示安装成功:

  1. 执行以下命令,启动Apache服务。
systemctl start httpd.service
  1. 打开浏览器输入ECS服务器的公网IP,如果显示如下图的测试页面表示Apache服务安装成功。

冬季实战营第三期《MySQL数据库进阶实战》

上一篇:mycat初次简单配置分库分表


下一篇:使用IDEA启动Tomcat发布项目