wcp mysql 密碼 mySql資料庫筆記

2021-10-18 11:54:45 字數 1142 閱讀 6818

1、解決字符集,預設建表是utf-8,windows是gbk,需要宣告字符集:set names gbk;

2、整型:tinyint,smallint,mediumint,int,bigint:分別佔據1-5位.(其中一位佔據八個位元組) 在宣告例如年齡列的時候,可以宣告為無符號型別的整型,unsigned; zerofill:零填充,在整型不夠的時候會預設零填充(如果該列是zerofill,就是無符號的)(詳細內容見zerofill.jpg)。

3、給建好的表增加列:alter table 表名 add 列名 型別等宣告     更改已建好的列:alter table 表名 change 列名 新列名 型別等。

4、浮點型:float float(m精度,d標度)例如:float(6,2):表示總位數是6,小數字是2.

5、char 和varchar括號中表示的是字元數而不是位元組。例如如果宣告char(8),那麼可以容納八個字母或者漢字。 char如果不夠,最後用空格補齊,取出來的時候將最後空格去掉。 varchar會使用1-2個位元組來儲存它的實際的字元數。 速度上char快。

6、日期時間型別: year:如果輸入了兩位:"00-69"表示2000-2069;         "70-99"表示1970-1999.最好輸入四位。 date:典型格式:1990-01-21(日期型別) time型別:典型格式:hh:mm:ss(時間型別) datetime型別:典型格式:'1990-01-21 08:28:08'(日期時間型別)

注意:在開發中很少用乙個時間型別來表示乙個精確到秒的時間,問題是它不方便電腦來計算,一般使用時間戳來記錄。(int)

7、性別列最好用tinyint(只占用乙個位元組)。 8、in、between、

注入漏洞攻擊 萬能密碼:bb' or 1='1 萬能使用者名稱:xx' union select * from 表名/*(解釋:/*表示後面的不執行)

解決方法: ①:使用使用者名稱查出密碼,然後和輸入的密碼比較 ②:使用pdo(php data object)(必須先在php.ini中啟用pdo)

搜尋中注入攻擊: select * from users where name like '%$str%';

如果其中的$str是%或者是__的話,會將users表中的資料全部查出來,可以使用對%、_等字元進行轉義(在前面加上乙個\)php中可以使用addsalash函式。

重置mysql 密碼 mysql重置密碼

ubuntu下重置mysql的root密碼 sudo vi etc mysql my.cnf,在 mysqld 段中加入一行 skip grant tables sudo service mysql restart,重啟mysql服務 sudo mysql u root p mysql,用空密碼進入...

mysql密碼復位 mysql密碼重置

5.3 停止mysql服務 service mysqld stop 啟動mysqld safe 跳過啟動授權表。啟動時加上skip grant tables引數目的是在啟動mysql時不啟動grant tables,授權表。這樣就可以修改root的密碼了。mysqld safe skip grant...

mysql 密碼問題 MySQL密碼問題

在linux下 如果 mysql 正在執行,首先殺之 killall term mysqld。啟動 mysql bin safe mysqld skip grant tables 就可 1.mysqladmin uroot poldpassword password newpassword 2.my...