iSCSI网络磁盘
Internet SCSI,网际SCSI接口:默认端口 3260
一种基于C/S架构的虚拟磁盘技术
服务器提供磁盘空间,客户机连接并当成本地磁盘使用
backstore,后端存储(共享的设备)
对应到服务端提供实际存储空间的设备,需要起一个管理名称
target,磁盘组(后段包装)
是客户端的访问目标,作为一个框架,由多个lun组成
lun,逻辑单元(关联)
每一个lun需要关联到某一个后端存储设备,在客户端会视为一块虚拟硬盘
配置服务端的 iscsi
0. 关闭防火墙
1. 分区 分出一个用来作为共享的磁盘空间
2. 装包 targetcli
3. 配置 使用命令targetcli (共5步)
后台存储:
/backstore/block create [后端存储名] [实际设备路径]
创建磁盘组
/iscsi create [磁盘组的IQN名称]
创建逻辑单元
/iscsi/[磁盘组名]/tpg1/luns create [后端存储路径]
设置客户端验证的识别
/iscsi/[磁盘组名]/tpg1/acls create [客户机IQN标识]
设置用服务器的哪个网卡来进行沟通,并且部署端口号
/iscsi/[磁盘组名]/tpg1/portals create [服务器的IP地址] [端口号]
注 : IQN - ISCSI Qualified Name 名称规范,要求极高
iqn.[yyyy]-[mm].[com].[域名]:[自定义标识]
作用:用来识别 target 磁盘组, 也用来识别客户机身份
4. 启服务
systemctl restart target
systemctl enable target
配置客户端的 iscsi:
1.安装软件包iscsi-initiator-utils
2.修改配置文件 /etc/iscsi/initiatorname.iscsi,指定 客户端声称 的名字 ,完成身份识别
3.重起iscsid服务,刷新客户端声称 的名字
systemctl restart iscsid
注: 可能出现报错后,用下面命令解决 systemctl daemon-reload
4.寻找服务端共享存储,借鉴 man 帮助信息
iscsiadm --mode discoverydb --type sendtargets --portal 172.25.0.11 --discover
5.重起iscsi服务,加载识别共享存储
systemctl restart iscsi
systemctl enable iscsi
6. 再启动服务后,客户端可以用命令控制登录或者登出
客户端登陆iscsi
iscsiadm --mode node --targetname 服务端的iqn名字 --portal 服务端的IP:3260 --login
客户端登出iscsi
iscsiadm --mode node --targetname 服务端的iqn名字 --portal 服务端的IP:3260 --logout
注意:如果要取消iscsi共享的磁盘,要先取消挂载
测试是否成功: lsblk #能够发现sda磁盘
总结:
服务端:1.分区 2. 装包 targetcli 3.配置(命令装包,a.后段存储 b.创建iscsi c.填完iscsi下的所有三个项目) 4.重启服务
客户端:1.装包 2.配置配置文件 3.启服务iscsid(确认身份)4.再配置(命令iscsiadm,用man帮助),5.启服务
网络服务要处理好防火墙和SELinux
在服务端配置的时候多用tab键
数据库管理:存放数据的仓库
数据库中会有很多的库 ,在每一个库中会有很多的表格
数据库管理的时候会有用户的说法,但这用户和系统用户无关
1、部署mariadb数据库服务器:默认的端口 3306
mariadb-server:提供服务端有关的系统程序
装包:yum -y install mariadb-server
启服务:systemctl restart mariadb
systemctl enable mariadb
2. 修改密码,和进入数据库
mysqladmin -u [用户名] [-p[旧密码]] password '新密码'
mysql -u [用户名] -p[密码]
注意:-p后面要紧跟密码,不能有空格
3. 把备份的数据导入到数据库中
mysql -u [用户名] -p[密码] [库] < [文件]
4. 基本操作
进入数据库先到的是数据库,里面有很多库,所以我们要进入库才能看到表,看到表才有数据
show databases 查看所有库的基本信息
use database [库名] 前往某个库
show tables 查看库中的表的基本信息
对用户创建并赋权
grant [增删改查的权限] on [库].[表] to [用户名]@[登陆IP] identified by [密码];
对表进行查找
select [表1].[表中数据的字段1],[表2].[表中数据的字段2]…… from [表1],[表2]…… where [表].[字段] = '' and ……;
对表进行删除
delete from [表1],[表2]…… where [表].[字段] = '' and ……;
对表进行增加
insert into [表] values ('[按照表的要求写入数据1]','[按照表的要求写入数据2]' …… );
5. 数据库中 mysql.user 表记录了所有数据库相关的用户信息
删除所有密码为空的信息
delete from mysql.user where password='';
要用特殊命令刷新才能生效
flush privileges;
总结:
1.在Linux的命令中如果要非交互完成操作,在-p后面必须紧跟密码,不能有空格
2.mariadb 数据库中,每个语句要家;
3.对数据库和库内信息查看用show ,进入数据库用use ,对数据库中表是增删改查
3.增删改查中where用于设置条件,其连接方式是and,其他是用[ , ] 所以要注意分开记忆。