Engineer05

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介:

##################################################

修改两台虚拟机防火墙默认区域为trusted

[root@server0 ~]# firewall-cmd --set-default-zone=trusted
[root@desktop0 ~]# firewall-cmd --set-default-zone=trusted

#####################################################
划分分区的指令:parted (专门做大空间划分 2T)

GPT: 突破了4个主分区限制,可以有128主分区

[root@server0 ~]# parted /dev/vdb
(parted) print #输出分区表
(parted) mktable gpt #设置分区模式为GPT

(parted) mkpart #划分新的分区
分区名称? []? haha #分区名称随便起
文件系统类型? [ext2]? ext4 #文件系统不起作用
起始点? 0 #上一个分区的结束,是下一个分区的开始
结束点? 2G 
忽略/Ignore/放弃/Cancel? Ignore #忽略,分区表信息会占用一部分空间
(parted) print #输出分区表
(parted) quit

[root@server0 ~]# ls /dev/vdb1
#####################################################
iSCSI网络磁盘

• Internet SCSI,网际SCSI接口
– 一种基于C/S架构的虚拟磁盘技术
– 服务器提供磁盘空间,客户机连接并当成本地磁盘使用

服务端思路:
1.划分分区
2.运行targetcli命令
------>建立后端存储
------>建立共享磁盘起名
------>关系将共享磁盘名字与后端存储联系起来
------>做ACL 允许客户端通过那个名字来访问
------>启用端口和IP

• ISCSI Qualified Name 名称规范
– iqn.yyyy-mm.倒序域名:自定义标识
– 用来识别 target 磁盘组,也用来识别客户机身份

服务端server0:
1.服务端软件,targetcli
2.运行targetcli命令进行配置

[root@server0 ~]# targetcli 
/> ls
/> backstores/block create nsd /dev/vdb1 #创建后端存储并起名
/> ls
/> iscsi/ create iqn.2017-12.com.example:server0 #为共享磁盘起名
/> ls
/> iscsi/iqn.2017-12.com.example:server0/tpg1/luns create /backstores/block/nsd #关联后端存储

/> ls
/> iscsi/iqn.2017-12.com.example:server0/tpg1/acls create iqn.2017-12.com.example:desktop0 #设置客户端名称
/> ls
/> iscsi/iqn.2017-12.com.example:server0/tpg1/portals create 172.25.0.11 #启用端口与IP
Using default IP port 3260
Created network portal 172.25.0.11:3260.

/> exit

3.重起服务,设置为开机自起
[root@server0 ~]# systemctl restart target
[root@server0 ~]# systemctl enable target

客户端desktop0:
1.安装一个客户端软件
[root@desktop0 ~]# yum repolist 
[root@desktop0 ~]# yum -y install iscsi-initiator-utils.i686

2.指定客户端自称的名字
[root@desktop0 ~]# vim /etc/iscsi/initiatorname.iscsi
#指明访问服务端,客户端自称的名字,是服务端ACL指定的名称
InitiatorName=iqn.2017-12.com.example:desktop0

3.发现服务端位置
[root@desktop0 ~]# man iscsiadm
[root@desktop0 ~]# iscsiadm --mode discoverydb --type sendtargets --portal 172.25.0.11 --discover

4.加载共享存储
[root@desktop0 ~]# lsblk 
[root@desktop0 ~]# systemctl restart iscsi
[root@desktop0 ~]# systemctl daemon-reload
[root@desktop0 ~]# systemctl restart iscsi
[root@desktop0 ~]# systemctl enable iscsi
[root@desktop0 ~]# lsblk

######################################################
客户端:刷新/etc/iscsi/initiatorname.iscsi文件的服务

[root@desktop0 ~]# systemctl restart iscsid 
[root@desktop0 ~]# systemctl restart iscsi

######################################################
MariaDB数据库

database:数据库

什么是数据库
• DB,数据库:一批数据的集合,主流的数据库多用来存放关系型表格数据

虚拟机Server:安装MariaDB数据库 
[root@server0 ~]# yum -y install mariadb-server

MariaDB数据库 ,端口:3306

启动数据库服务 
[root@server0 ~]# systemctl restart mariadb
[root@server0 ~]# systemctl enable mariadb

######################################################

MariaDB数据库基本操作

[root@server0 ~]# mysql #默认没有密码

MariaDB [(none)]> show databases; #查看所有库
MariaDB [(none)]> create database nsd1710; #创建库

MariaDB [(none)]> show databases;
MariaDB [(none)]> drop database nsd1710; #删除库

MariaDB [(none)]> show databases;

MariaDB [(none)]> quit

[root@server0 ~]#

设置MariaDB数据库管理员的密码

数据库管理员名:root   MariaDB数据库   mysql-----》user

系统管理员名:root    /etc/passwd

– mysqladmin [-u用户名] [-p[旧密码]] password '新密码'

[root@server0 ~]# mysqladmin -u root password '123'

[root@server0 ~]# mysql -u root -p
Enter password: 输入密码

[root@server0 ~]# mysql -u root -p123 #非交互输入密码进入

##########################################################

• 禁止监听,只服务于本机

[root@server0 ~]# vim /etc/my.cnf
[mysqld]
skip-networking //跳过网络监听
.. ..
[root@server0 ~]# systemctl restart mariadb

##########################################################

– 使用/选择数据库:USE 数据库名;
– 列出库里有哪些表:SHOW TABLES;

[root@server0 ~]# mysql -u root -p123

MariaDB [mysql]> show databases;
MariaDB [mysql]> use mysql;
MariaDB [mysql]> show tables;
MariaDB [mysql]> create database nsd1710;
MariaDB [mysql]> show databases;

在虚拟机Server0上操作:下载事先备份好的数据库文件

wget http://classroom/pub/materials/users.sql

导入数据到数据库中
[root@server0 ~]# mysql -u root -p123 nsd1710 < users.sql

[root@server0 ~]# mysql -u root -p123
MariaDB [(none)]> use nsd1710;
MariaDB [nsd1710]> show tables;

查询数据库中表记录
select 表字段 from 库.表名

select * from nsd1710.base;

MariaDB [nsd1710]> select from location;
MariaDB [nsd1710]> select 
from base;

#########################################################
增 insert 
删 delete
改 update
查 select

有条件的查询

1.在base表中查询密码为123的用户的名字?
[root@server0 ~]# mysql -u root -p123
MariaDB [(none)]> use nsd1710;
MariaDB [nsd1710]> show tables;

select * from base where password='123';

select name,password from base where password='123';

select name from base where password='123';

select id,name from base;

并使用相 应的 SQL 查询以回答下列问题:
1)密码是 solicitous 的人的名字?

select name from base where password='solicitous';

2)有多少人的姓名是 Barbara 同时居住在 Sunnyvale?

select * from base,location where base.name='Barbara' and location.city='Sunnyvale' and base.id=location.id;

select count(*) from base,location where base.name='Barbara' and location.city='Sunnyvale' and base.id=location.id;

insert base values (6,'Barbara','321'); #插入表记录
insert location values (6,'Sunnyvale'); #插入表记录
select from base;
select 
from location ;

select * from base,location where base.name='Barbara' and location.city='Sunnyvale' and base.id=location.id;

##########################################################
数据库授权

– 除了 root 用户,此nsd1710数据库只能被用户 lisi 查询,此用户的密码为123

MariaDB数据库 mysql-----》user

– GRANT 权限列表 ON 数据库名.表名 TO 用户名@ 客户机地址 IDENTIFIED BY '密码';

[root@server0 ~]# mysql -u root -p123

grant select on nsd1710.* to lisi@localhost identified by '123';

 当lisi从本地localhost登陆,输入密码123.将会获得nsd1710库中所有表的查询的权限

验证:测试lisi登陆
[root@server0 ~]# mysql -u lisi -p123

######################################################
DELETE 删除表记录
• MariaDB [(none)]> 交互指令
– DELETE FROM [数据库.]表名 WHERE 条件语句;

  1. 禁止空密码root用户访问 mariadb 数据库

[root@server0 ~]# mysql -u root -p123

use mysql;
select user,host,password from user;

select user,host,password from user where password='';

delete from user where password='';

select user,host,password from user;

###########################################################

刷新user表的记录:
MariaDB [(none)]> flush privileges;

###########################################################

#######################################################

####################################################



     本文转自sweak_h 51CTO博客,原文链接:http://blog.51cto.com/13478354/2046921,如需转载请自行联系原作者





相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
How China's Developers Are Defining The Information Age (Infographic 5)
China’s Developers: the technologies of tomorrow that are defining the information age
1620 0
How China's Developers Are Defining The Information Age (Infographic 5)
How China's Developers Are Defining The Information Age (Infographic 4)
China’s Developers: the essentials of today that are defining the information age
1470 0
How China's Developers Are Defining The Information Age (Infographic 4)
How China's Developers Are Defining The Information Age (Infographic 3)
China’s Developers: the trending technologies that are defining the information age
1577 0
How China's Developers Are Defining The Information Age (Infographic 3)
How China's Developers Are Defining The Information Age (Infographic 2)
China’s Developers: the tools that are defining the information age
1592 0
How China's Developers Are Defining The Information Age (Infographic 2)
How China's Developers Are Defining The Information Age (Infographic 1)
China's Developers at a Glance: 9 key takeaways from China's Developer Survey Report 2017
1867 0
How China's Developers Are Defining The Information Age (Infographic 1)
|
Web App开发 测试技术 开发工具
|
Shell Linux 开发工具
|
网络安全 开发工具 数据安全/隐私保护
|
安全 开发工具
|
网络协议 Shell 网络安全