MySQL 面試選擇題15道(單選)
1、MySQL資料庫四種特性,不包括()
A.原子性
B.事務性
C.一致性
D.隔離性
2、MySQL報錯error 1062 的意思是()
A.連線資料庫失敗,沒有連線資料庫的許可權
B.欄位值重複,入庫失敗
C.未定義使用者對資料表的訪問許可權
D.刪除資料庫檔案失敗
3、MySQL主從架構如下:
主庫 從庫
192.169.1.1 192.168.1.2
需要在從庫上採用mysqldump備份並記錄主庫binlog、Position點,需要加哪個引數(不考慮其他引數) ()
A.--master-date
B.--single-transaction
C.--dump-slave
D.--opt
4、以下哪個不能有效減小從庫延遲時間()
A.主庫進行update操作時where後條件沒有索引,新增索引
B.主庫有大事物,增加快取,非同步寫入資料庫,減少直接對db的大量寫入
C.主庫併發更新寫入頻繁,從庫設定innodb_flush_log_at_trx_commit=1及sync_binlog=1
D.資料庫中存在大量myisam表,修改表結構為innodb儲存引擎的表
5、表test(a int,b int,time date)涉及以下3條sql:
select * from test where a=1 and b=1; select * from test where b=1; select * from test where b=1 order by time desc;
只建一個索引,如何建最優()
A.idx_ab(a,b)
B.idx_ba(b,a)
C.idx_abtime(a,b,time)
D.idx_btime(b,time)
6、MySQL中InnoDB引擎的行鎖是通過加在什麼上完成(或稱實現)的:()
A.資料塊
B.索引值
7、關於MySQL許可權說法正確的是()
A.管理許可權(如super, process, file等)不能夠指定某個資料庫,on後面必須跟 *.*
B.如需要truncate許可權只需授予drop許可權
C.super許可權允許使用者終止任何查詢,但不允許修改全域性變數的set語句
D.建立一個使用者時,需要單獨授予usage連線許可權
8、關於select count(*)和select count(1)以及select count(column)區別,說法錯誤的是()
A.如果表沒有主鍵, 那麼count(1)比count(*)快
B.如果表有主鍵,那主鍵作為count的條件時候count(主鍵)最快
C.如果表沒有主鍵,只有一個column的話,那count(column)最快
D.count(*)跟count(1)的結果一樣,都包括對NULL的統計,而count(column)是不包括NULL的統計
9、使用SQL語句進行分組檢索時,為了去掉不滿足條件的分組,應當()
A.使用WHERE子句
B.在GROUPBY後面使用HAVING子句
C.先使用WHERE子句,再使用HAVING子句
D.先使用HAVING子句,再使用WHERE子句
10、關於SQL優化,以下說明哪個是錯誤的()
A.類似分頁功能的SQL,建議先用主鍵關聯,然後返回結果集,效率會高很多
B.通常情況下,join的效能比較差,建議改造成子查詢寫法
C.多表聯接查詢時,關聯欄位型別儘量一致,並且都要有索引
D.儘可能不使用TEXT/BLOB型別,確實需要的話,建議拆分到子表中,不要和主表放在一起,避免SELECT* 的時候讀效能太差
11、Linux作業系統下,關於MySQL大寫小問題正確的是()
A.column(包括別名)、index、storedroutine和event names的大小寫敏感
B.database、table(包括別名)的大小寫敏感性可以通過系統引數“lower_case_table_names”來配置,等於1時大小寫敏感
C.trigger、identifiers(識別符號)的大小寫敏感性受lower_case_table_names引數影響
D.資料敏感性:校對字符集(Collation)可通過show collation檢視,其中“_ci”代表case-insensitive大小寫不敏感,“_cs”代表case-sensitive大小寫敏感,“_bin”的大小寫敏感依賴於character的二進位制編碼
12、MySQL delete from table where後哪項操作不會釋放磁碟物理空間()
A.optimize table tablename;
B.alter table tablename add column ;
C.alter table tablename engine=innodb;
D.rename table tablename to tablename_new;
13、MySQL在RR事物隔離級別下,更新條件為索引欄位,並非 唯一索引(包括主鍵索引)時,會通過Next-Key Lock解決幻讀問題。以下哪項不會加此鎖()
A.Inser into…
B.Select… from… for update;
C.Update…from… where
D.Insert into T select … from S where…;
14、MySQLSleep執行緒過多,以下操作不正確的是()
A.設定interactive_timeout引數,減小wait_timeout等待超時時間
B.php程式不要使用長連線,java程式調整連線池
C.開啟mysql慢查詢
D.檢查應用連線情況,增加連線數
15、表結構如下:
CREATE TABLE `test` (
`id`int(11) NOT NULL AUTO_INCREMENT,
`uid`int(11) DEFAULT NULL,
`name`char(20) DEFAULT '0' NOT NULL,
`phone` int(11) DEFAULT NULL,
`email`varchar(20) DEFAULT NULL,
PRIMARYKEY (`id`),
KEY`idx_name` (`name`(5)),
KEY`idx_phone` (`phone`),
KEY`idx_email` (`email`)
) ENGINE=InnoDB AUTO_INCREMENT=35 DEFAULTCHARSET=utf8;
請問idx_name、idx_email及idx_addr索引長度分別是多少 ()
A.15,4,62
B.15,5,63
C.16,4,62
D.16,5,63
參考答案:BBCCD BACBB DDADB