一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術(shù)及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫技術(shù)|

服務器之家 - 數(shù)據(jù)庫 - Mysql - MySQL 5.6 中TIMESTAMP with implicit DEFAULT value is deprecated錯誤

MySQL 5.6 中TIMESTAMP with implicit DEFAULT value is deprecated錯誤

2020-05-17 16:06MYSQL教程網(wǎng) Mysql

安裝mysql的時候出現(xiàn)TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details),可以參考下面的方法解決

安裝MySQL時,有warning:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
[root@localhost mysql]# scripts/mysql_install_db --user=mysql
Installing MySQL system tables...2015-08-13 14:20:09 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2015-08-13 14:20:09 0 [Note] ./bin/mysqld (mysqld 5.6.26) starting as process 1934 ...
2015-08-13 14:20:09 1934 [Note] InnoDB: Using mutexes to ref count buffer pool pages
2015-08-13 14:20:09 1934 [Note] InnoDB: The InnoDB memory heap is disabled
2015-08-13 14:20:09 1934 [Note] InnoDB: Mutexes and rw_locks use InnoDB's own implementation
2015-08-13 14:20:09 1934 [Note] InnoDB: Memory barrier is not used
2015-08-13 14:20:09 1934 [Note] InnoDB: Compressed tables use zlib 1.2.3
2015-08-13 14:20:09 1934 [Note] InnoDB: Using Linux native AIO
2015-08-13 14:20:09 1934 [Note] InnoDB: Not using CPU crc32 instructions
2015-08-13 14:20:09 1934 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2015-08-13 14:20:09 1934 [Note] InnoDB: Completed initialization of buffer pool
2015-08-13 14:20:10 1934 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created!
2015-08-13 14:20:10 1934 [Note] InnoDB: Setting file ./ibdata1 size to 12 MB
2015-08-13 14:20:10 1934 [Note] InnoDB: Database physically writes the file full: wait...
2015-08-13 14:20:10 1934 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB
2015-08-13 14:20:11 1934 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB
2015-08-13 14:20:12 1934 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0
2015-08-13 14:20:12 1934 [Warning] InnoDB: New log files created, LSN=45781
2015-08-13 14:20:12 1934 [Note] InnoDB: Doublewrite buffer not found: creating new
2015-08-13 14:20:12 1934 [Note] InnoDB: Doublewrite buffer created
2015-08-13 14:20:12 1934 [Note] InnoDB: 128 rollback segment(s) are active.
2015-08-13 14:20:12 1934 [Warning] InnoDB: Creating foreign key constraint system tables.
2015-08-13 14:20:12 1934 [Note] InnoDB: Foreign key constraint system tables created
2015-08-13 14:20:12 1934 [Note] InnoDB: Creating tablespace and datafile system tables.
2015-08-13 14:20:12 1934 [Note] InnoDB: Tablespace and datafile system tables created.
2015-08-13 14:20:12 1934 [Note] InnoDB: Waiting for purge to start
2015-08-13 14:20:12 1934 [Note] InnoDB: 5.6.26 started; log sequence number 0
2015-08-13 14:20:14 1934 [Note] Binlog end
2015-08-13 14:20:14 1934 [Note] InnoDB: FTS optimize thread exiting.
2015-08-13 14:20:14 1934 [Note] InnoDB: Starting shutdown...
2015-08-13 14:20:16 1934 [Note] InnoDB: Shutdown completed; log sequence number 1625977
OK
 
Filling help tables...2015-08-13 14:20:16 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated.
Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2015-08-13 14:20:16 0 [Note] ./bin/mysqld (mysqld 5.6.26) starting as process 1957 ...
2015-08-13 14:20:16 1957 [Note] InnoDB: Using mutexes to ref count buffer pool pages
2015-08-13 14:20:16 1957 [Note] InnoDB: The InnoDB memory heap is disabled
2015-08-13 14:20:16 1957 [Note] InnoDB: Mutexes and rw_locks use InnoDB's own implementation
2015-08-13 14:20:16 1957 [Note] InnoDB: Memory barrier is not used
2015-08-13 14:20:16 1957 [Note] InnoDB: Compressed tables use zlib 1.2.3
2015-08-13 14:20:16 1957 [Note] InnoDB: Using Linux native AIO
2015-08-13 14:20:16 1957 [Note] InnoDB: Not using CPU crc32 instructions
2015-08-13 14:20:16 1957 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2015-08-13 14:20:16 1957 [Note] InnoDB: Completed initialization of buffer pool
2015-08-13 14:20:16 1957 [Note] InnoDB: Highest supported file format is Barracuda.
2015-08-13 14:20:16 1957 [Note] InnoDB: 128 rollback segment(s) are active.
2015-08-13 14:20:16 1957 [Note] InnoDB: Waiting for purge to start
2015-08-13 14:20:16 1957 [Note] InnoDB: 5.6.26 started; log sequence number 1625977
2015-08-13 14:20:17 1957 [Note] Binlog end
2015-08-13 14:20:17 1957 [Note] InnoDB: FTS optimize thread exiting.
2015-08-13 14:20:17 1957 [Note] InnoDB: Starting shutdown...
2015-08-13 14:20:18 1957 [Note] InnoDB: Shutdown completed; log sequence number 1625987
OK
 
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
 
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
 
 ./bin/mysqladmin -u root password 'new-password'
 ./bin/mysqladmin -u root -h localhost.localdomain password 'new-password'
 
Alternatively you can run:
 
 ./bin/mysql_secure_installation
 
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
 
See the manual for more instructions.
 
You can start the MySQL daemon with:
 
 cd . ; ./bin/mysqld_safe &
 
You can test the MySQL daemon with mysql-test-run.pl
 
 cd mysql-test ; perl mysql-test-run.pl
 
Please report any problems at http://bugs.mysql.com/
 
The latest information about MySQL is available on the web at
 
 http://www.mysql.com
 
Support MySQL by buying support/licenses at http://shop.mysql.com
 
New default config file was created as ./my.cnf and
will be used by default by the server when you start it.
You may edit this file to change server settings
 
WARNING: Default config file /etc/my.cnf exists on the system
This file will be read by default by the MySQL server
If you do not want to use this, either remove it, or use the
--defaults-file argument to mysqld_safe when starting the server
 
[root@localhost mysql]#

[Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

其原因是從 5.6開始,timestamp 的默認行為已經(jīng)是 deprecated 了。

在MySQL 5.6.6之前,TIMESTAMP的默認行為:

•TIMESTAMP列如果沒有明確聲明NULL屬性,默認為NOT NULL。(而其他數(shù)據(jù)類型,如果沒有顯示聲明為NOT NULL,則允許NULL值。)設(shè)置TIMESTAMP的列值為NULL,會自動存儲為當前timestamp。
•表中的第一個TIMESTAMP列,如果沒有聲明NULL屬性、DEFAULT或者 ON UPDATE,會自動分配 DEFAULT CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP 屬性。
•表中第二個TIMESTAMP列,如果沒有聲明為NULL或者DEFAULT子句,默認自動分配'0000-00-00 00:00:00′。插入行時沒有指明改列的值,該列默認分配'0000-00-00 00:00:00′,且沒有警告。

要關(guān)閉警告,需要加入下面的參數(shù):

?
1
2
[mysqld]
explicit_defaults_for_timestamp=true

重啟MySQL后錯誤消失,這時TIMESTAMP的行為如下:

•TIMESTAMP如果沒有顯示聲明NOT NULL,是允許NULL值的,可以直接設(shè)置改列為NULL,而沒有默認填充行為。
•TIMESTAMP不會默認分配DEFAULT CURRENT_TIMESTAMP 和 ON UPDATE CURRENT_TIMESTAMP屬性。
•聲明為NOT NULL且沒有默認子句的TIMESTAMP列是沒有默認值的。往數(shù)據(jù)表中插入列,又沒有給TIMESTAMP列賦值時,如果是嚴格SQL模式,會拋出一 個錯誤,如果嚴格SQL模式?jīng)]有啟用,該列會賦值為'0000-00-00 00:00:00′,同時出現(xiàn)一個警告。(這和MySQL處理其他時間類型數(shù)據(jù)一樣,如DATETIME)
(參見:http://www.ythuaji.com.cn/article/66880.html

也就是 explicit_defaults_for_timestamp 關(guān)閉了 timestamp 類型字段鎖擁有的一些會讓人感到奇怪的默認行為,加入了該參數(shù)之后,如果還需要為 timestamp類型的字段指定默認行為,那么就需要顯示的在創(chuàng)建表時顯示的指定。explicit_defaults_for_timestamp 也就是這個意思:顯示指定默認值為timestamp類型的字段。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产无套在线播放 | 亚洲国产精品久久精品成人网站 | 2019中文字幕 | 亚洲国产天堂久久精品网 | 成人网久久 | 青青青视频免费观看 | 大象传媒免费网址 | 亚洲AV无码一区二区三区乱子伦 | 日本精品www色 | 国产高清在线视频一区二区三区 | 菠萝视频在线完整版 | 国产精品林美惠子在线观看 | 91精品国产综合久久消防器材 | 日韩一本在线 | 波多野结衣亚洲一区 | 欧美日韩国产一区二区三区在线观看 | 国产欧美成人免费观看 | 大胆人gogo888体艺术在线 | 久久免费看少妇级毛片蜜臀 | 国产精品久久久久影视不卡 | 紧身短裙女教师波多野 | 国产欧美va欧美va香蕉在线观 | 亚洲成a人片777777久久 | 欧美大片一级片 | 久久毛片基地 | 亚洲精品国产一区二区在线 | 婷婷激情综合五月天 | 欧美成人一区二区三区 | 精品精品国产yyy5857香蕉 | 动漫人物差差插曲漫画 | 日韩精品一区二三区中文 | 四虎影视在线观看永久地址 | 牛牛色婷婷在线视频播放 | 国产精品免费视频能看 | 国产尤物精品视频 | 国产精品视频免费一区二区三区 | 国产精品反差婊在线观看 | 亚洲午夜视频 | 跪在老师脚下吃丝袜脚 | 国产资源免费观看 | 91精品国产高清久久久久久91 |