Mysql資料庫技術Tip

2021-10-06 20:26:46 字數 965 閱讀 2161

1. varchar(n)中的n代表的是字元數,而不是位元組數

使用utf8儲存255個漢字 varchar(255)=765個位元組。過大的長度會消耗更多的記憶體。

2. 避免使用text、blob資料型別,最常見的text型別可以儲存64k的資料。建議把blob或是text列分離到單獨的擴充套件表中。

mysql記憶體臨時表不支援text、blob這樣的大資料型別,如果查詢中包含這樣的資料,在排序等操作時,就不能使用記憶體臨時表,必須使用磁碟臨時表進行。而且對於這種資料,mysql還是要進行二次查詢,會使sql效能變得很差,但是不是說一定不能使用這樣的資料型別。如果一定要使用,建議把blob或是text列分離到單獨的擴充套件表中,查詢時一定不要使用select * 而只需要取出必要的列,不需要text列的資料時不要對該列進行查詢。text或blob型別只能使用字首索引。因為mysql對索引字段長度是有限制的,所以text型別只能使用字首索引,並且text列上是不能有預設值的

3. 同財務相關的金額類資料必須使用decimal型別

4. 使用timestamp(4個位元組)或datetime型別(8個位元組)儲存時間timestamp 儲存的時間範圍 1970-01-01 00:00:01 ~ 2038-01-19-03:14:07

5. 資料庫三大正規化是什麼

6. mysql有關許可權的表都有哪幾個

mysql伺服器通過許可權表來控制使用者對資料庫的訪問,許可權表存放在mysql資料庫裡,由mysql_install_db指令碼初始化。這些許可權表分別user,db,table_priv,columns_priv和host。

7. mysql的binlog有有幾種錄入格式?分別有什麼區別?

有三種格式,statement,row和mixed。

MySQL資料庫技術李 MySQL資料庫技術

11.查詢所有同學的學號 姓名 選課數 總成績 select student.s id,student.sname,count sc.c id sum score from student left outer join sc on student.s id sc.s id group by stu...

Mysql資料庫技術(二)

型別名稱 說明int integer 整數型別 double 小數型別 decimal m,d 指定整數字與小數字長度的小數型別 date 日期型別,格式為yyyy mm dd,包含年月日,不包含時分秒 datetime 日期型別,格式為yyyy mm dd hh mm ss,包含年月日時分秒 ti...

Mysql資料庫技術 MEB備份技術

meb是乙個mysql官方的備份工具,具有 使用meb時,我們先需要在mysql 的配置檔案中新增必要引數 root wang 01 mysql vim etc my.cnf mysqld datadir var lib mysql socket var lib mysql mysql.sock u...