##################################################
修改兩台虛拟機防火牆預設區域為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) 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 #建立後端存儲并起名
/> iscsi/ create iqn.2017-12.com.example:server0 #為共享磁盤起名
/> iscsi/iqn.2017-12.com.example:server0/tpg1/luns create /backstores/block/nsd #關聯後端存儲
/> iscsi/iqn.2017-12.com.example:server0/tpg1/acls create iqn.2017-12.com.example:desktop0 #設定用戶端名稱
/> 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 enable iscsi
[root@desktop0 ~]# lsblk
######################################################
用戶端:重新整理/etc/iscsi/initiatorname.iscsi檔案的服務
[root@desktop0 ~]# systemctl restart iscsid
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)]> quit
[root@server0 ~]#
設定MariaDB資料庫管理者的密碼
– 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 //跳過網絡監聽
.. ..
– 使用/選擇資料庫: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;
在虛拟機Server0上操作:下載下傳事先備份好的資料庫檔案
導入資料到資料庫中
[root@server0 ~]# mysql -u root -p123 nsd1710 < users.sql
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的使用者的名字?
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 ;
資料庫授權
– 除了 root 使用者,此nsd1710資料庫隻能被使用者 lisi 查詢,此使用者的密碼為123
MariaDB資料庫 mysql-----》user
– GRANT 權限清單 ON 資料庫名.表名 TO 使用者名@ 客戶機位址 IDENTIFIED BY '密碼';
grant select on nsd1710.* to lisi@localhost identified by '123';
驗證:測試lisi登陸
[root@server0 ~]# mysql -u lisi -p123
DELETE 删除表記錄
• MariaDB [(none)]> 互動指令
– DELETE FROM [資料庫.]表名 WHERE 條件語句;
禁止空密碼root使用者通路 mariadb 資料庫
use mysql; select user,host,password from user; select user,host,password from user where password=''; delete from user where password='';
###########################################################
重新整理user表的記錄:
MariaDB [(none)]> flush privileges;
#######################################################
####################################################
本文轉自sweak_h 51CTO部落格,原文連結:http://blog.51cto.com/13478354/2046921,如需轉載請自行聯系原作者