• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    MySQL5.6中的TIMESTAMP和explicit_defaults_for_timestamp參數

    來源:懂視網 責編:小采 時間:2020-11-09 20:56:35
    文檔

    MySQL5.6中的TIMESTAMP和explicit_defaults_for_timestamp參數

    MySQL5.6中的TIMESTAMP和explicit_defaults_for_timestamp參數:安裝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 DEFAU
    推薦度:
    導讀MySQL5.6中的TIMESTAMP和explicit_defaults_for_timestamp參數:安裝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 DEFAU

    安裝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 的默認行為已經是 deprecated 了。

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

    TIMESTAMP列如果沒有明確聲明NULL屬性,默認為NOT NULL。(而其他數據類型,如果沒有顯示聲明為NOT NULL,則允許NULL值。)設置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′,且沒有警告。
    要關閉警告,需要加入下面的參數:

    explicit_defaults_for_timestamp=true

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

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

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

    您可能感興趣的文章:

  • Windows 64 位 mysql 5.7以上版本包解壓中沒有data目錄和my-default.ini及服務無法啟動的快速解決辦法(問題小結)
  • Linux下MySQL5.7.18二進制包安裝教程(無默認配置文件my_default.cnf)
  • MySQL 5.6 中TIMESTAMP with implicit DEFAULT value is deprecated錯誤
  • MySQL之Field‘***’doesn’t have a default value錯誤解決辦法
  • MYSQL無法啟動提示: Default storage engine (InnoDB) is not available的解決方法
  • 解決Default storage engine (InnoDB) is not available導致mysql無法啟動的修改辦法
  • 詳解MySQL中default的使用
  • 聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    MySQL5.6中的TIMESTAMP和explicit_defaults_for_timestamp參數

    MySQL5.6中的TIMESTAMP和explicit_defaults_for_timestamp參數:安裝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 DEFAU
    推薦度:
    標簽: 參數 mysql mysql5.6
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 久久国产精品二国产精品| 欧美成人精品第一区二区三区| 国内精品伊人久久久久av一坑| 国产精品午夜福利在线无码| 久久精品亚洲一区二区三区浴池 | 91久久精品无码一区二区毛片| 久久99国产综合精品女同| 久久国产美女免费观看精品| 久久精品国产影库免费看| 精品无码一区二区三区爱欲九九| 欧美精品一区二区久久| 国内精品久久久久久久久| 69堂午夜精品视频在线| 国产精品自拍一区| 6一12呦女精品| 国产午夜精品久久久久免费视 | 亚洲一级Av无码毛片久久精品 | 蜜臀AV无码国产精品色午夜麻豆| 欧美视频精品一区二区三区| 国产欧美国产精品第一区| 国产AV午夜精品一区二区入口 | 精品无码综合一区| 国产精品视频一区二区三区不卡| 亚洲国产精品免费视频| 精品视频第一页| 热re99久久精品国产99热| 国产伦精品一区二区三区女 | 亚洲国产另类久久久精品黑人| 欧美亚洲成人精品| 青春草无码精品视频在线观 | 亚洲国产精品无码久久SM | 国产成人精品日本亚洲直接 | 99精品国产福利在线观看| 欧美亚洲国产精品第一页| 日本一区精品久久久久影院| 久久精品国产福利国产秒| 久久精品这里热有精品| 亚洲国产精品久久久久婷婷软件 | 黑巨人与欧美精品一区| 国内精品久久久久久久涩爱| 久久精品国产一区二区电影|