最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL 5.6 中的 TIMESTAMP 和 explicit_defaults_for_timestamp 參數(shù)

 更新時間:2015年08月14日 16:04:18   投稿:mrr  
這篇文章主要介紹了MySQL 5.6 中的 TIMESTAMP 和 explicit_defaults_for_timestamp 參數(shù),需要的朋友可以參考下

安裝MySQL時,有warning:

[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 的默認(rèn)行為已經(jīng)是 deprecated 了。

在MySQL 5.6.6之前,TIMESTAMP的默認(rèn)行為:

TIMESTAMP列如果沒有明確聲明NULL屬性,默認(rèn)為NOT NULL。(而其他數(shù)據(jù)類型,如果沒有顯示聲明為NOT NULL,則允許NULL值。)設(shè)置TIMESTAMP的列值為NULL,會自動存儲為當(dāng)前timestamp。

表中的第一個TIMESTAMP列,如果沒有聲明NULL屬性、DEFAULT或者 ON UPDATE,會自動分配 DEFAULT CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP 屬性。

表中第二個TIMESTAMP列,如果沒有聲明為NULL或者DEFAULT子句,默認(rèn)自動分配'0000-00-00 00:00:00′。插入行時沒有指明改列的值,該列默認(rèn)分配'0000-00-00 00:00:00′,且沒有警告。
要關(guān)閉警告,需要加入下面的參數(shù):

explicit_defaults_for_timestamp=true

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

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

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

相關(guān)文章

  • mysql用戶管理操作實(shí)例分析

    mysql用戶管理操作實(shí)例分析

    這篇文章主要介紹了mysql用戶管理操作,結(jié)合實(shí)例形式分析了mysql用戶管理查看、創(chuàng)建、修改、刪除等相關(guān)操作技巧,需要的朋友可以參考下
    2020-04-04
  • 詳解Mysql5.7自帶的壓力測試命令mysqlslap及使用語法

    詳解Mysql5.7自帶的壓力測試命令mysqlslap及使用語法

    mysqlslap是一個診斷程序,旨在模擬MySQL服務(wù)器的客戶端負(fù)載并報(bào)告每個階段的時間。這篇文章主要介紹了Mysql5.7自帶的壓力測試命令mysqlslap的相關(guān)知識,需要的朋友可以參考下
    2019-10-10
  • 淺談MySQL user權(quán)限表

    淺談MySQL user權(quán)限表

    MySQL 在安裝時會自動創(chuàng)建一個名為 mysql 的數(shù)據(jù)庫,mysql 數(shù)據(jù)庫中存儲的都是用戶權(quán)限表。本文就詳細(xì)的介紹一下MySQL user權(quán)限表 ,感興趣的可以了解一下
    2021-06-06
  • mysql之?dāng)?shù)據(jù)舊表導(dǎo)新表的實(shí)現(xiàn)示例

    mysql之?dāng)?shù)據(jù)舊表導(dǎo)新表的實(shí)現(xiàn)示例

    在MySQL中,可以通過INSERT INTO...SELECT * FROM...語句輕松復(fù)制兩個結(jié)構(gòu)相同或目標(biāo)表包含源表所有列的表中的數(shù)據(jù),本文就來介紹一下mysql之?dāng)?shù)據(jù)舊表導(dǎo)新表的實(shí)現(xiàn)示例,感興趣的可以了解一下
    2024-10-10
  • SQL Server數(shù)據(jù)庫錯誤5123解決方案

    SQL Server數(shù)據(jù)庫錯誤5123解決方案

    這篇文章主要介紹了SQL Server數(shù)據(jù)庫錯誤5123解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • MySQL WITH AS創(chuàng)建臨時表的實(shí)現(xiàn)

    MySQL WITH AS創(chuàng)建臨時表的實(shí)現(xiàn)

    在MySQL中,我們可以通過WITH AS方法創(chuàng)建臨時結(jié)果集,本文主要介紹了MySQL WITH AS創(chuàng)建臨時表的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-08-08
  • MySQL安裝后默認(rèn)自帶數(shù)據(jù)庫的作用詳解

    MySQL安裝后默認(rèn)自帶數(shù)據(jù)庫的作用詳解

    這篇文章主要介紹了MySQL安裝后默認(rèn)自帶數(shù)據(jù)庫的作用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • mysql中Innodb 行鎖實(shí)現(xiàn)原理

    mysql中Innodb 行鎖實(shí)現(xiàn)原理

    InnoDB的行鎖是通過索引項(xiàng)加鎖實(shí)現(xiàn)的,分為使用索引和非索引字段檢索的情況,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-10-10
  • MySQL數(shù)據(jù)庫升級的一些

    MySQL數(shù)據(jù)庫升級的一些"陷阱"

    這篇文章主要介紹了MySQL數(shù)據(jù)庫升級需要注意的地方,幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-08-08
  • MySql連接不上問題及解決

    MySql連接不上問題及解決

    這篇文章主要介紹了MySql連接不上問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06

最新評論

岚皋县| 泰兴市| 体育| 遵义县| 阳信县| 崇州市| 南川市| 屏东市| 林芝县| 甘洛县| 邵阳市| 崇州市| 延寿县| 达州市| 海伦市| 陕西省| 南乐县| 五峰| 诏安县| 萍乡市| 中卫市| 临武县| 环江| 鲜城| 平和县| 宜兴市| 海城市| 安远县| 普兰店市| 台湾省| 海兴县| 禄劝| 故城县| 新乐市| 棋牌| 浏阳市| 封丘县| 梨树县| 永新县| 东海县| 宜章县|