Раздел вопрос-ответ Установить mysql 5.6 на travis

На Travis используется mysql 5.5 (не поддерживает несколько CURRENT_TIMESTAMP полей). Как проще всего на travis установить mysql 5.6?

ERROR 1293 (HY000) at line 1: Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause

 

share
 
Ошибка связана с тем, что несколько полей с DEFAULT CURRENT_TIMESTAMP в mysql поддерживаются только начиная с версии 5.6.5. До это версии возможно только одно поле с DEFAULT CURRENT_TIMESTAMP.
digest 10 лет назад

1 ответ

На данный момент travis не поддерживает версию mysql 5.6 из-коробки. У них стоит на github issue, но задача еще не выполнена. Поэтому будем ставить mysql вручную.

Перед установкой на travis mysql 5.6 нужно полностью снести mysql 5.5.

MySQL Percona Server 5.6 мне не удалось поставить на travis VM (Ubuntu 12.04 LTS precise). У меня возникала ошибка, описанная здесь. Как установить обычный MySQL 5.6 - смотри .travis.yml.

.travis.yml для travis с установкой mysql 5.6:

language: php

php:
  - 5.4

services:
  - memcached

before_script:
  - echo "extension = memcached.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
  - sed -i "s/short_open_tag = .*/short_open_tag = On/" ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini

  #install mysql 5.6
  - sudo apt-get remove --purge mysql-common mysql-server-5.5 mysql-server-core-5.5 mysql-client-5.5 mysql-client-core-5.5
  - sudo apt-get autoremove
  - sudo apt-get autoclean
  - sudo apt-add-repository ppa:ondrej/mysql-5.6 -y
  - sudo apt-get update
  - sudo apt-get install mysql-server-5.6 mysql-client-5.6
  - mysql -uroot -e "SET @@global.sql_mode = NO_ENGINE_SUBSTITUTION"

 

Добавить комментарий
    как минимум 5 символов

    icon Вход в систему

    зарегистрироваться
    НОВЫЕ ПОЛЬЗОВАТЕЛИ