數據庫與監控安全



(數據庫與監控_安全篇)
選擇(每題1分)
1.SQL server數據庫超級管理員爲( )
A:Admin B:Sa
C:sys D:root

2.在SQL語言中,條件“BETWEEN 20 AND 30”表示年齡在20到30之間,
且( )
a)包括20歲和30歲 b)不包括20歲和30歲
c)包括20歲不包括30歲 d)不包括20歲包括30歲

3.爲了使索引鍵的值在基本表中唯一,在建立索引語句中應使用保留字( )
a) UNIQUE b) COUNT
c) DISDINCT d) UNION

4.SQL語句中修改表結構的命令是()
A、 MODIFY TABLE
B、 MODIFY STRUCTURE
C、 ALTER TABLE STRUCTURE

5.以下哪個不是數據庫的物理組件 ()
A)表空間 B)數據文件
C)日誌文件 D)控制文

6.請從訂單表中取得數據,其中包括三個列客戶名、訂單時間與訂單費用。可 以用下列哪個where子句査詢ORDERS表,取得客戶A超過2700的訂單?()
A) where客戶名= <K, /
B)where客戶名= 4A’ and訂單費用 < 2700;
C) where客戶名= ‘A, or訂單費用> 2700;
D) where客戶名= ‘A’ and訂單費用 >2700;

7.下面哪一個SQL語句將USER表的名稱更改爲USERINFO? ()
A) ALTER TABLE USER RENAME AS USERINFO;
B) RENAME TO USERINFO FROM USER;
C) RENAME USER TO USERINFO;
D) RENAME USER AS USERINFO;

8.假定USER表的PRIMARY KEY約束名爲USERJD_PK,下面哪個語句將刪除
這個約束?()
A) DROP CONSTRAINT USER」D_PK;
B) ALTER TABLE USER DROP USERJD_PK;
C) ALTER TABLE USER DROP CONSTRAINT USERJD_PK;
D) ALTER TABLE USER DROP PRIMARY KEY;

9.要從ORDERS表中取得數據,其中包括三個列CUSTOMER、ORDER_DATE與 ORDER_AMT»可以用下列哪個where子句査詢ORDERS表,取得客戶LESLIE超 過2700的訂單?()
A) where customer = ‘LESLIE’ ;
B) where customer = ‘LESLIE’ and order_amt < 2700;
C) where customer = ‘LESLIE’ or order_amt > 2700;
D) where customer = ‘LESLIE’ and order__amt > 2700;

10.SQL語言不包括()
A) 數據定義語言 B) 數據操作語言
C) 數據翻譯語言 D) 數據控制語言

11.SQL語句中刪除表的命令是()
A) delete table B) erase table
C) delete dbf D) drop table

12.SQL語句中不是查詢計算函數的是()
A) abs B) sum
C) max D) avg

13.數據庫系統與文件系統的主要區別是()
A) 數據庫系統複雜,而文件系統簡單
B) 文件系統不能解決數據冗餘和數據獨立性的問題,而數據庫系統可以解決
C) 文件系統只能管理程序文件,而數據庫系統能夠管理各類類型的文件
D) 文件系統管理的數據量較少,而數據庫系統可以管理龐大的數據量

14.對數據表進行篩選的操作,結果是()
A) 只顯示滿足條件的記錄,將不滿足的記錄從表中刪除
B) 顯示滿足條件的記錄,並將這些記錄保存到一個新表中
C) 只顯示滿足條件的記錄,不滿足條件的記錄被隱藏
D) 將滿足條件的記錄和不滿足條件的記錄分爲兩個表進行顯示

15.查詢命令如下:select 學號,成績*0.8 as 期末成績 from 成績 order by 成績 DESC,學號;正確的說法是()
A) 查看學生成績,並將成績乘以係數0.8,結果按成績升序、學號降序排列
B) 查看學生成績,並將成績乘以係數0.8,結果按成績降序、學號升序排列
C) 查看學生成績,並將成績乘以係數0.8,結果按成績升序、學號升序排列
D) 查看學生成績,並將成績乘以係數0.8,結果按成績降序、學號降序排列

16.以下哪一項不是用來查詢、添加、修改和刪除數據庫中的數據語句()
A) select B) insert
C) update D) drop

17.使用SQL命令將教師表teacher中的工資salary字段的值增加500,應該使用的命令爲()
A) replace salary with salary+500
B) update teacher salary with salary+500
C) update set salary with salary+500
D) update teacher set salary=salary+500

18.表的兩種相關約束是()
A) 主鍵和索引 B) 外鍵和索引
C) 主鍵和外鍵 D) 內鍵和外鍵

19.
填空題(每題1分)
列舉四種你所知曉的數據:

SQL語言中,刪除一個表的命令是
用命令創建一個數據庫名爲skylar

簡答(每題5分):

表結構如下的,寫出建表語句
表名: RA_PERSON_INFO
字段: RA_SN 數值型 (序列號)
COMMONNAME 字符型 長度256(姓名)
UPORGNAME 字符型 長度256(主管單位)
Create table RA_PERSON_INFO(
RA_SN int(2),
COMMONNAME varchar(256),
UPORGNAME varchar(256)
);

用SQL將如下信息插入到上題建立的表中
序列號:2
姓名:張三
單位:BJCA

Insert into RA_PERSON_INFO values(2,”張三”,”BJCA”);

請列舉出10個以上的你所知曉的SQL語句?
Insert select delete update
Create show drop grant revoke load data create view

創建一個 leak_download_url 表有 id,url,md5,flag 等字段,將 id 設置爲 主鍵?
Create table leak_download_url (
Id int(2) primary key auto_increment,
Url varchar(255),
md5 char(255),
Flag enum(“0”,”1”)
);

需要統計file數據表中level爲70的數值,應如何編寫sql語句?

需要更新leak_download_url表中flag字段爲0的數據改爲flag爲1?

觸發器的作用?
觸發器是一種特殊的存儲過程,它在插入,刪除或修改特定表中的數據時觸發執行,它比數據庫本身標準的功能有更精細和更復雜的數據控制能力。主要作用如下:
1.安全性。能夠基於數據庫的值使用戶具有操作數據庫的某種權利。
  # 能夠基於時間限制用戶的操作,比如不同意下班後和節假日改動數據庫數據。
  # 能夠基於數據庫中的數據限制用戶的操作,比如不同意股票的價格的升幅一次超過10%。
2.審計。能夠跟蹤用戶對數據庫的操作。   
  # 審計用戶操作數據庫的語句。
  # 把用戶對數據庫的更新寫入審計表。
3.實現複雜的數據完整性規則
  # 實現非標準的數據完整性檢查和約束。觸發器可產生比規則更爲複雜的限制。與規則不同,觸發器能夠引用列或數據庫對象。比如,觸發器可回退不論什麼企圖吃進超過自己保證金的期貨。

什麼是存儲過程?用什麼來調用?
存儲過程(Stored Procedure)是在大型數據庫系統中,一組爲了完成特定功能的SQL 語句集。
調用存儲過程 call 存儲過程名稱;

索引的作用?和它的優點缺點是什麼?
在關係數據庫中,索引是一種單獨的、物理的對數據庫表中一列或多列的值進行排序的一種存儲結構,它是某個表中一列或若干列值的集合和相應的指向表中物理標識這些值的數據頁的邏輯指針清單。索引的作用相當於圖書的目錄,可以根據目錄中的頁碼快速找到所需的內容。
優點:加快查詢記錄的速度
缺點:佔用物理存儲空間,減慢寫記錄的速度。

什麼是事務?
事務是應用程序中一系列嚴密的操作,所有操作必須成功完成,否則在每個操作中所作的所有更改都會被撤消。一個事務中的一系列的操作要麼全部成功,要麼一個都不做。 
事務的結束有兩種,當事務中的所以步驟全部成功執行時,事務提交。如果其中一個步驟失敗,將發生回滾操作,撤消撤消之前到事務開始時的所以操作。

什麼是鎖?
簡單來說就是數據庫爲了保證數據的一致性而使各種共享資源在被併發訪問變得有序所設計的一種規則。對於任何一種數據庫來說都需要有相應的鎖定機制。爲了保證數據的一致完整性,任何一個數據庫都存在鎖定機制。鎖定機制的優劣直接應想到一個數據庫系統的併發處理能力和性能。

mysql中varchar和char的區別以及varchar(50)中的50代表的含義?
Char 定長字符類型最大存儲只255字節
Varchar 變長字符類型最大存儲只65532字節
varchar(50)50表示 最多能存儲50個字節的數據

mysql數據庫cpu飆升到500%的話怎麼處理?
查內存
查看進程
Show processlist

如何通過shell登錄mysql?
#Mysql -hIP地址 -u用戶名 -p密碼

列出所有數據庫? show databases;

如何切換到某個數據庫,並在上面工作? use 庫名;

列出數據庫內的所有表? show tables;

如何獲取表內所有Field對象的名稱和類型? desc 表名;

如何刪除表? drop table 表名;

如何刪除數據庫? drop database 庫名;

如何列出表’xrt’內name域值爲’tecmint’,web_address域值爲’tecmint.com’的所有數據?

如何列出表’xrt’內name域值不爲’tecmint’,web_address域值爲’tecmint.com’的所有數據?

假設你有一個名爲xyz的表,它有多個字段,如createtime和engine。名爲engine的字段由Memoty和MyIsam兩種數值組成,如何只列出createtime和engine這兩列並且engine的值爲MyIsam?

簡述數據庫中drop、delete、truncate的區別?
(1)DELETE語句執行刪除的過程是每次從表中刪除一行,並且同時將該行的刪除操作作爲事務記錄在日誌中保存以便進行進行回滾操作。
   TRUNCATE TABLE 則一次性地從表中刪除所有的數據並不把單獨的刪除操作記錄記入日誌保存,刪除行是不能恢復的。並且在刪除的過程中不會激活與表有關的刪除觸發器。執行速度快。
(2)表和索引所佔空間。
   當表被TRUNCATE 後,這個表和索引所佔用的空間會恢復到初始大小,
   DELETE操作不會減少表或索引所佔用的空間。
   drop語句將表所佔用的空間全釋放掉。

使用nmap命令掃描儀一臺機器192.168.0.1,看它打開了多少個端口?
Nmap 192.168.0.1

啓動和停止mysql服務的腳本是什麼? mysqld_safe

說出一種linux下實現高可用的方案名稱? keepalived

使用tcpdump監聽主機IP爲192.168.1.1,tcp端口爲80的數據,同時將結果保存輸出到tcpdump.log?
tcpdump -A -w tcpdump.log 192.168.1.1 -p tcp port 80

簡述下負載均衡與高可用的概念?
LB : 多臺數據平均響應客戶端的多次連接請求
HA : 主備模式,主服務器宕機後 備用服務器才接替工作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章