如何安装MySQL 5.6?


36

我刚刚安装了Ubuntu 12.10(amd64),并想安装最新版本的MySQL 5.6。

如果可能的话,我想以“ Debian Way”方式安装(而不是升级)(即使用apt-getdpkg)。

Answers:


22

对于12.10等较旧的版本:

(此版本是寿命终止,请考虑升级!)

我已经基于MySQL 5.5 Debian软件包准备了带有MySQL 5.6软件包的PPA。无法保证它将立即生效,但是如果您可以尝试并报告成功(或失败),我将不胜感激。

有适用于MySQL 5.5和MySQL 5.6的PPA,均带有最新的上游资源。

MySQL 5.5:https//launchpad.net/~ondrej/+archive/mysql-5.5

MySQL 5.6:https//launchpad.net/~ondrej/+archive/mysql-5.6

更新:MySQL 5.6软件包在全新安装中失败,并且已修复。如果您发现更多错误,请直接通过启动板或https://github.com/oerdnj/deb.sury.org/issues与我联系。


1
我不知道为什么为-1?这些程序包不起作用,还是有其他原因?
oerdnj 2013年

感谢您的努力!为什么是“实验性的”?您会在将来的版本/错误修正中维护它吗?您是否也有适用于PHP 5.5(适用于12.04)的(或知道是值得信赖的)PPA?
Dexter

1
@Dexter这是实验性的,因为它需要测试。我已经在php5-experimental PPA中维护了php5.5存储库(很快将移至php5 PPA)。
oerdnj

1
@Dexter JFTR我现在将两个MySQL PPA合并为一个。ppa:ondrej / php5也已通过PHP 5.5进行了更新,PHP 5.4可以在ppa:ondrej / php5-oldstable中找到。
oerdnj

1
@oerdnj:感谢您打包5.6,但对于全新安装的raring来说,它不起作用。相关的系统日志条目位于:gist.github.com/rasa/6161973
Ross Smith II,

21

对于14.04用户:

Ubuntu 14.04的默认版本为MySQL 5.5,但也可以从Universe存档安装MySQL 5.6。安装5.6与指定版本一样简单:

myuser@mypc:~$ sudo apt-get purge mysql-server-5.5 mysql-client-5.5
myuser@mypc:~$ sudo apt-get autoremove
myuser@mypc:~$ sudo apt-get install mysql-server-5.6 mysql-client-5.6

检查Tocker的网站以获取更多详细信息


3
不应使用PURGE。将配置保留在运行的服务器上。只需修改配置文件!链接
TD_Nijboer 2014年

11

您可以从oracle.com下载最新的.deb文件

oracle dev下载站点

并简单地运行命令

dpkg -i mysql-5.6.7-rc-debian6.0-x86_64.deb

我没有安装它,所以我不能保证预期的结果。


史蒂芬,谢谢您的帮助!不幸的是,我已经尝试过了。它安装正常,但安装在中/opt,但未在/etc,或中设置任何内容/etc/init.d,或者让我以开头service,或添加/opt/mysql/server-5.6/bin到路径中,或其他任何内容。
罗斯·史密斯二世

@Ross,请先尝试安装MySQL 5.5,apt-get然后再使用.deb文件进行安装。
Old Pro

@OldPro:我认为这不会起作用,因为5.5将安装在/etc/usr/bin,等等,而5.6将安装在中opt
罗斯·史密斯二世

好吧,它们安装在/ opt中...由于“ Debian方式”实际上只是一个懒惰的管理员,因此我将忍受它并相应地调整/etc/init.d中的启动文件。甚至在/ opt中甚至还可以准备一些符号链接启动文件。
保罗·汉施(PaulHänsch)2012年


4

我刚刚写了一篇有关该主题的博客文章。在Mysql 5.6安装中找到它。希望能帮到你!


1
谢谢Eric,有两件事:在该页面上,您的注释链接也断开了,如果您需要将mysql client5.5与mysql服务器5.6一起使用,则需要将my.cnf从/链接到/etc/mysql/my.cnf。 etc / my.cnf
JD Schmidt

2

您当然可以在12.04和12.10的存储库中安装所需的所有内容Mysql-5.5,但是以下内容将帮助您进行Mysql-5.6安装。

首先,我应该尝试安装从DEB文件官方网站Software CentreGdebi,作为这些程序解决依赖关系,dpkg其实不然。


编译mysql是您的下一个选择:

注意:按照“ Debian方式”(正如您提到的那样)只会得到您,mysql-5.5而不会5.6

sudo apt-get source mysql-5.5

因为默认情况下没有其他可用的来源。如果要使用最新的开发代码,则必须从官方站点下载它,这比尝试启用一些不稳定的存储库或其他存储库要好。

当前还没有可用的ppas(除了您尝试过的ppas),因此,以下编译mysql-5.6方式实际上是获得所需内容时最简单,唯一的方法。


但是,正如您所说的那样,您有兴趣编译的最新开发版本mysql 5.6,以下说明应该可以为您提供帮助:

mysql站点下载最新的开发源代码并验证下载。目前你想要mysql-5.6.7-rc.tar.gz; 进入页面,选择开发版本,然后在框中选择源代码

现在开始

tar xzvf mysql-5.6.7-rc.tar.gz

cd到该文件夹​​并创建一个名为bld的文件夹:

cd mysql-5.6.7-rc
mkdir bld
cd bld

在这一点上,重要的是使用

sudo apt-get install build-essential cmake libaio-dev

重要文档可在此处找到有关构建过程的信息,但您可能想要做的只是使用官方构建所使用的标准选项。为此,如上所述在这里,请运行(而在bld文件夹中):

cmake -DBUILD_CONFIG=mysql_release .. 

然后,当cmake配置完成并满足要求时(请注意它提到的所有缺失的依赖项;如果有缺失的依赖项,请下载它们,然后删除bld目录中的所有内容,然后cmake再次运行上述命令)

现在,您可以使用make和可能添加的任何选项来运行编译了:

make

编译完成后(大约需要一个小时),运行

sudo make install or sudo checkinstall

现在,您应该已经mysql安装了。任何进一步的信息都应该在非常详细的官方指南中找到


Mik,我非常感谢您的回答,但是我正在寻找如何使用标准Debian方法进行操作。但是谢谢!
罗斯·史密斯二世

@RossSmithII请参阅我的编辑,了解如何以“ Debian方式”执行此操作,不会获得最新版本的mysql-5.6。

1
您的答案虽然很有帮助,但内容丰富,但不能真正回答问题,因为从源代码安装“ Debian Way”时使用apt-get source -bdpkg-buildpackage
罗斯·史密斯二世

1

可在此处下载My SQL 5.6My SQL 5.6下载

我认为您必须将非rpm软件包放在列表的最底部。

在这里您可以找到有关如何安装此版本的详细信息:如何使用二进制包进行安装

希望这可以帮助 :)

要安装和使用MySQL二进制发行版,基本命令序列如下所示:

shell> groupadd mysql
shell> useradd -r -g mysql mysql
shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data

Next command is optional

shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> bin/mysqld_safe --user=mysql &

Next command is optional

shell> cp support-files/mysql.server /etc/init.d/mysql.server

这个答案与askubuntu.com/a/203335/98419重复,我的回答是:...我已经尝试过了。它安装正确,但是安装在/ opt中,并且没有在/ etc或/etc/init.d中设置任何内容,或者让我以服务启动它,或者添加/opt/mysql/server-5.6/bin到路径,或其他任何东西。
罗斯·史密斯二世

要安装MySQL,基本命令序列如下所示:shell> groupadd mysql shell> useradd -r -g mysql mysql shell> cd / usr / local shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz shell> ln -s mysql-version的完整路径-OS mysql shell> cd mysql shell> chown -R mysql shell> chgrp -R mysql shell> scripts / mysql_install_db --user = mysql shell> chown -R root shell > chown -R mysql data#下一个cmd可选shell> cp support-files / my-medium.cnf /etc/my.cnf shell> bin / mysqld_safe --user = mysql&#下一个cmd可选shell> cp support-files / mysql.server /etc/init.d/mysql.server
Vikash Singh

上面提到的链接中提供了详细说明:如何使用二进制软件包进行安装
Vikash Singh

感谢您的跟进。不幸的是,我没有问如何手动安装MySQL 5.6。这已经在许多地方得到了证明。我在问如何使用标准Debian方法(二进制文件(首选)或通过源代码)安装MySQL 5.6。
罗斯·史密斯二世

0

与empi89的答案相比,这是使用修改后的mysql初始化脚本的另一种方法。是的,这是手动的,但这是您要支付的最新价格。Oracle不提供存储库。看一下这个帖子

编辑:简而言之,您可以将原始的/etc/init.d/mysql复制到/etc/init.d/mysql-opt并根据需要进行修改:

  1. 用/etc/mysql/my-opt.cnf替换/etc/mysql/my.cnf
  2. 将mysql二进制文件的调用替换为opt二进制文件的调用(例如,将/ usr / bin / mysqld_safe替换为/opt/mysql/server-5.6/bin/mysqld_safe)
  3. 将对/ etc / mysql / debian-start的调用替换为/ etc / mysql / debian-start-opt

然后,将/ etc / mysql / debian-start复制到/ etc / mysql / debian-start-opt并根据需要进行编辑:

  1. 将mysql二进制文件的调用替换为opt二进制文件的调用(例如,将/ usr / bin / mysqld_safe替换为/opt/mysql/server-5.6/bin/mysqld_safe)
  2. 使它可执行

    # chmod a+x /etc/mysql/debian-start-opt
    

然后,将/etc/mysql/my.cnf复制到/etc/mysql/my-opt.cnf并编辑:

  1. 在[mysqld_safe]部分下,添加以下行:

     mysqld = mysqld --defaults-file=/etc/mysql/my-opt.cnf
    
  2. 在[mysqld]部分下,修改以下几行:

     basedir = /opt/mysql/server-5.6
     lc-messages-dir = /opt/mysql/server-5.6/share
    
  3. 另外,如果您启用了此功能,就像我一样

     log_slow_queries = <log>
    

    现在已弃用,应将其替换为以下两行:

     slow-query-log = TRUE
     slow-query-log-file = <log>
    

测试时间停止mysql

# /etc/init.d/mysql stop

保留数据备份,以防万一您需要还原旧数据

# cp -rp /var/lib/mysql /var/lib/mysql.old

使初始化脚本可执行

# chmod a+x /etc/init.d/mysql-opt

测试mysql-opt启动。

注意:这将更新您当前的mysql内部表。您确实进行了数据备份,不是吗?

# /etc/init.d/mysql-opt start

检查日志中是否有错误。在调试无法启动的服务器期间,您可以手动发布

# /opt/mysql/server-5.6/bin/mysqld_safe --defaults-file=/etc/mysql/my-opt.cnf

如果一切正常,则可以在启动过程中启用opt mysql服务器。禁用旧脚本在init上运行。

# update-rc.d -f mysql remove

安装新产品,而忽略警告。

# update-rc.d mysql-opt defaults

确认已安装。

# ls -l /etc/rc3.d | grep mysql

现在,先前的命令应该输出如下内容:

lrwxrwxrwx 1 root root 19 May 10 15:55 S17mysql-opt -> ../init.d/mysql-opt

-2

在这里,您具有从二进制文件安装它的所有说明,以及按照要求安装它/usr/bin并配置为服务的步骤...

Mysql 5.6安装


2
感谢您提供此链接,但是很遗憾,这些说明是用于手动安装二进制文件的。问题是如何使用标准Debian方法(例如)安装mysql apt-get
罗斯·史密斯二世
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.