Ubuntu 16.04にMySql 5.6をインストールします


40

Ubuntu 16.04にはMySQL 5.7が付属しているようですが、5.6をインストールする必要があります。

明示的sudo apt-get install mysql-server-5.6にインストールしようとすると、次のエラーが表示されます。

Package mysql-server-5.6 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  mysql-community-server:i386 mysql-common:i386 mysql-community-server mysql-common percona-xtradb-cluster-server-5.6:i386 percona-server-server-5.6:i386 mysql-testsuite-5.7:i386
  mariadb-server-10.0:i386 percona-xtradb-cluster-server-5.6 percona-server-server-5.6 mysql-testsuite-5.7 mariadb-server-10.0 mysql-server-core-5.7:i386 mysql-server-5.7:i386 mysql-server-core-5.7
  mysql-server-5.7

5.6をインストールする方法はありますか?


そのmysql 5.7.12はRAMの豚です。
ディブ

回答:


69

次のアプローチを使用しました。

sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'
sudo apt-get update
sudo apt install mysql-server-5.6 mysql-client-5.6

最後のコマンドの実行中にエラーが発生した場合は、この回答のコメントセクションをご覧ください。


10
する必要がありますsudo rm /var/lib/mysql/debian-5.7.flagまたは中止しますSub-process /usr/bin/dpkg returned an error code (1)
xxjjnn

2
mysqlサービスが正しく開始されません。「systemctl status mysql.service」を使用すると、「LSBの起動に失敗しました:mysqlデータベースサーバーデーモンの起動と停止」が表示されます。これは、Trustyリポジトリがupstartを使用し、5.7がsystemdを使用しているためですか?
ジョワンセバスチャン16

1
@jowansebastian-これが起こった理由を見つけたことがありますか?同様のエラーが発生しています。
バリーリーダー

@BarrieReader申し訳ありませんが、私は自分がやっていることのためにcentos VMを作成し、そこでうまく動作させました。
ジョワンセバスチャン16

+1。5.6.35のようなMySQL 5.6の特定のバージョンをインストールする方法があるかどうか知っていますか?
vphilipnyc

9

私はそれをなんとかしたように見えます。

  1. ソフトウェア&アップデート / その他のソフトウェアは、 14.04のリポジトリを追加しました:

    deb http://archive.ubuntu.com/ubuntu trusty main
    
  2. mysqlクライアントとサーバーをインストールしました:

    sudo apt install mysql-server-5.6
    sudo apt install mysql-client-5.6
    

更新: 5.6をインストールする前に、他のmysqlパッケージが存在しないことを確認してください。

dpkg -l | grep mysql -mysqlパッケージのリストを返します。

apt-get purge <package name>パージに使用します。

ソース: 16.04アップグレードによりmysql-serverが破損しました


1
良い解決策ですが、なぜ5.7ではなく5.6が必要なのですか?
ウーヴェ・バーガー

5
5.7は後方互換性がありません。私が取り組んでいるアプリケーションのいくつかのSQLが失敗します...
Tarlog

2
どのようなエラーが発生していますか?MySQL 5.7ではデフォルトで「オン」になっているONLY_FULL_GROUP_BYフラグによるものと思われます。オフに設定すると、大丈夫かもしれません。
ジェイディー

現在、詳細を覚えていませんが、ほぼ2か月前に試しました。私の記憶が正しければ、それはいくつかの日付処理に関するものでした。日付の解析かもしれません。
Tarlog

5.7は実際にテーブルスキーマを強制します
リチャードヘイブン

8

私は同じ問題に直面していたので、以下の簡単な手順を実行しました。

 sudo apt-get install software-properties-common
 $ sudo add-apt-repository -y ppa:ondrej/mysql-5.6
 $ sudo apt-get update
 $ sudo apt-get install mysql-server-5.6

ソリューションは私のために働いた


このソリューションに加えて、まずこれらのフォルダーを削除する必要があります。/etc/mysql/ /var/lib/mysql /var/log/mysql /var/lib/mysql-filters /var/lib/mysql-keyringそして、このファイル:/var/lib/mysql/debian-5.7.flag

3
ondrejを引用するには:"使用しないで、壊れています"。ここにチェックアウトlaunchpad.net/~ondrej
Fractalf

3
dpkg --force-depends -P `dpkg -l |awk '/mysql/{print $2}'`

rm -r /etc/mysql/

apt-get install mysql-server mysql-client

1

MySQLの開発者は、中のMySQL 5.6のXenialパッケージを提供し、独自のリポジトリこれは、このように公式のUbuntuトラスティパッケージをインストールするよりも優先されなければならない、Ubuntuののバージョン用に作成されたパッケージをインストールするために、一般的に優れているので、。

MySQL Serverパッケージが既にある場合は、まずそれらをアンインストールする必要があります。で表示されるすべてのものをアンインストールするだけdpkg -l | grep mysql-serverです。

mysql-apt-config前のリンクのDEBパッケージをダウンロードしてインストールするだけです。インストール中に、どのバージョンが必要かを尋ねられるので、5.6を選択できます。パッケージのインストールが完了すると、sudo apt update && sudo apt install mysql-server-5.6MySQL Server 5.6がインストールされます。


3
これには5.6 versionオプション、のみ5.7が存在しない、動作しません
Frodik

5
実際、この答えが書かれたことから、MySQLの5.6サポートがから削除されたようだmysql-apt-config...リンク先のページではサポートされて、それがまだリストされているので、奇妙であるパッケージ、
fkraiem

1

私は同じ問題を抱えており、多くのオプションを試しました。そして、私は多くの問題を抱えていましたlibdbd-mysql-perl。システムは、そのライブラリをインストールするつもりはないと言っていました。

そこで、パッケージをインストールしてすべての依存関係を修正するAptitudeでインストールすることを考えました。

適性がない場合は、次のように取得できます。sudo apt-get install aptitude

まず、既存のmysqlをアンインストールする必要があります。次に、必要なパッケージをインストールする必要があります。

sudo aptitude install mysql-server-5.6

適性はあなたに多くの選択肢、何をすべきかを与えます。最初のオプションは、実際のパッケージを保持することです。したがって、次のパッケージをダウングレードするというオプションが見つかるまで(N)oを押します。

libmysqlclient20 [5.7.14-1ubuntu16.04 (<NULL>, now) -> 5.7.13-0ubuntu0.16
mysql-common [5.7.14-1ubuntu16.04 (<NULL>, now) -> 5.6.30-1+deb.sury.org

次に(Y)esを押すと、aptitudeがmysql-server-5.6をインストールします。受け入れるべきオプションは次のとおりです。

ここに画像の説明を入力してください

その後、システムがmysqlサーバーに接続できない場合は、コンピューターを再起動する必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.