Continuous integration 使用Travis CI配置Mysql 5.7

Continuous integration 使用Travis CI配置Mysql 5.7,continuous-integration,travis-ci,mysql-5.7,Continuous Integration,Travis Ci,Mysql 5.7,我无法在Travis CI上运行测试,因为我找不到在容器中安装mysql 5.7的方法 我已经找到了这个要点来解释travis.yml的配置方法。以下是命令: sudo apt get remove--清除“^mysql.*” sudo易于自动删除 清理旧版本的软件缓存 sudorm-rf/var/lib/mysql sudorm-rf/var/log/mysql echo mysql apt config mysql apt config/enable repo select mysql-5.

我无法在Travis CI上运行测试,因为我找不到在容器中安装mysql 5.7的方法

我已经找到了这个要点来解释
travis.yml
的配置方法。以下是命令:

sudo apt get remove--清除“^mysql.*”
sudo易于自动删除
清理旧版本的软件缓存
sudorm-rf/var/lib/mysql
sudorm-rf/var/log/mysql
echo mysql apt config mysql apt config/enable repo select mysql-5.7-dmr | sudo debconf集合选择
wgethttp://dev.mysql.com/get/mysql-apt-config_0.2.1-1ubuntu12.04_all.deb
sudo dpkg--安装mysql-apt-config_0.2.1-1ubuntu12.04_all.deb
sudo-apt-get-update-q
sudo apt get install-q-y-o Dpkg::Options::=“--force confdef”-o Dpkg::Options::=“--force confold”mysql服务器
在那之后,我正在做:

$mysql-uroot

为什么??我已经尝试了很多东西…谷歌绝对不是我在这个问题上的朋友…

好的,我找到了如何在Travis CI默认容器中重新安装MySQL 5.6的方法

下面是
.travis.yml
中需要的内容:

服务:
-mysql
sudo:是的
在脚本之前:
-bash.travis.install-mysql-5.7.sh
下面是
.travis.install-mysql-5.7.sh
(由于@codyzu-answer编辑):

echo mysql apt config mysql apt config/select server select mysql-5.7 | sudo debconf set selections
wgethttps://dev.mysql.com/get/mysql-apt-config_0.7.3-1_all.deb
sudo dpkg——安装mysql-apt-config_0.7.3-1_all.deb
sudo-apt-get-update-q
sudo apt get install-q-y--允许未经验证的-o Dpkg::Options::=--强制新建mysql服务器
sudomysql\u升级

我希望它能帮助任何面临同样问题的人

根据当前文档,您只需启用sudo,并在
.travis.yml
文件中添加以下配置

addons:
  apt:
   sources:
    - mysql-5.7-trusty
   packages:
    - mysql-server
    - mysql-client

Source

您是否尝试过sudomysql-uroot?是的,我尝试过……同样的错误!您是否尝试过使用
Docker
?检查一下:自从我发布这篇文章以来,我当然做到了:),而且每次我在CI/开发/测试运行中遇到同样的问题时,我都会这样做。现在每个人都应该这样。尽管如此,我不想也不应该更新这个问题,也不应该更新IMHO的答案,因为这些问题和答案对于任何试图用容器来解决这个问题的人来说仍然是有用的,调用
sudo mysql\u upgrade
作为
的最后一步。travis.install-mysql-5.7.sh
是必需的。这对我不起作用,我遇到了依赖性问题:
mysql服务器依赖于mysql社区服务器(=5.7.8-rc-1ubuntu12.04);但是:包mysql社区服务器尚未配置。
我必须添加此项才能使其正常工作:sudo mysql\u升级-u root sudo service mysql restart由于mysql-5.7-dmr不再存在,此项已中断。这是我的(现在)我更新了你的答案供参考,因为这失败了,因为
警告:以下软件包无法验证
因此必须通过
--允许未经验证的
来安装它。