面
試
題mysql
(數據庫與監控_安全篇)
選擇(每題1分)
1.SQL server數據庫超級管理員爲( )
A:Admin B:Sa
C:sys D:rootlinux
2.在SQL語言中,條件「BETWEEN 20 AND 30」表示年齡在20到30之間,
且( )
a)包括20歲和30歲 b)不包括20歲和30歲
c)包括20歲不包括30歲 d)不包括20歲包括30歲web
3.爲了使索引鍵的值在基本表中惟一,在創建索引語句中應使用保留字( )
a) UNIQUE b) COUNT
c) DISDINCT d) UNIONsql
4.SQL語句中修改表結構的命令是()
A、 MODIFY TABLE
B、 MODIFY STRUCTURE
C、 ALTER TABLE STRUCTUREshell
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 : 主備模式,主服務器宕機後 備用服務器才接替工做。