- MySQLをビルドする on AWS Red Hat 7.3 - sakaikの日々雑感~(T)編
- ふたつのバージョンのMySQLを同時に動かす on AWS Red Hat 7.3 - sakaikの日々雑感~(T)編
- MySQL 5.7 のビルドにトライ ~ 5.6とは大違い - sakaikの日々雑感~(T)編
- MySQL 5.7 を t2.micro でもビルドできた! - sakaikの日々雑感~(T)編
- AWS上でMySQL5.7動作環境を最速で作る方法(Generic binaries使用) - sakaikの日々雑感~(T)編
タイトルからわかるように、最後のエントリーに対抗してみました。
先に書いておくと、MySQL::Sandboxのインストールまで終わっていれば 15秒くらい でMySQL 5.7.17の起動までたどり着けます(あとで書きますがこれはMySQL::Sandboxの **中の人** が上手くやってる)
TL;DR
$ sudo su -i # yum install -y perl-ExtUtils-MakeMaker perl-Data-Dumper # curl -L cpanmin.us | perl - App::cpanminus # /usr/local/bin/cpanm MySQL::Sandbox # useradd mysql # su - mysql $ make_sandbox_from_url 5.7.17 $ msb 5717
みんなだいすき MySQL::Sandbox ですが、make_sandbox と make_replication_sandbox だけで満足していませんか?
MySQL::Sandbox 3.1.10から(2017年1月6日現在、最新版は3.2.05)は make_sandbox_from_url というコマンドを備えています。
引数なしで叩くとusage吐いてくれるので取り敢えず叩く。
$ make_sandbox_from_url The MySQL Sandbox, version 3.2.05 (C) 2006-2016 Giuseppe Maxia ### version needed This script tries to create a sandbox using binaries downloaded from the web. The success of this scripts depends on good connectivity and availability of downloading tools. ########################## # IT ONLY WORKS ON LINUX ########################## The repository of available binaries is at https://github.com/datacharmer/mysql-docker-minimal/blob/master/dbdata . Supported: # 5.0 -> [ 5.0.96 ] # 5.1 -> [ 5.1.72 ] # 5.5 -> [ 5.5.51 5.5.52 ] # 5.6 -> [ 5.6.32 5.6.33 ] # 5.7 -> [ 5.7.14 5.7.15 ] # 8.0 -> [ 8.0.0 ] The binaries are imported into /usr/mysql . make_sandbox_from_url X.X.XX [options] where X.X.XX is the version number. You can then pass any options accepted by make_sandbox.
make_sandbox_from_urlという名前ながら、引数はURLではなくてバージョン番号(make_sandboxと同じ)
これもともとは本当にURLだったけど、途中で変わったんじゃないかって気がする。確証はないし調べてもいない。
$ make_sandbox_from_url 5.7.17 2017-01-06 07:56:30 URL:https://raw.githubusercontent.com/datacharmer/mysql-docker-minimal/master/dbdata/available.txt [98/98] -> "/tmp/available.txt" [1] wget -nv -O 5.7.17.tar.gz 'https://github.com/datacharmer/mysql-docker-minimal/blob/master/dbdata/5.7.17.tar.gz?raw=true' 2017-01-06 07:56:33 URL:https://raw.githubusercontent.com/datacharmer/mysql-docker-minimal/master/dbdata/5.7.17.tar.gz [40959490/40959490] -> "5.7.17.tar.gz" [1] Executing low_level_make_sandbox --basedir=/home/mysql/opt/mysql/5.7.17 \ --sandbox_directory=msb_5_7_17 \ --install_version=5.7 \ --sandbox_port=5717 \ --no_ver_after_name \ --my_clause=log-error=msandbox.err .. do you agree? ([Y],n) Y # Starting server .. sandbox server started # Loading grants Your sandbox server was installed in $HOME/sandboxes/msb_5_7_17 $ msb 5717 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5 Server version: 5.7.17 MySQL Community Server (GPL) Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql [localhost] {msandbox} ((none)) >
…しかし…数百MBあるバイナリーを落としてるにしては…? と思ったら、公式バイナリーではなく、MySQL::Sandbox作者のGitHubから取ってきてる。
軽量版MySQLバイナリー.tar.gzは このスクリプト で作っている様子。
というわけでこれを使えば、5.0でも5.1でも5.5でも5.6でも5.7でも8.0でも好きなリリースシリーズが入れられますよ! ;)
ちなみにダウンロードされたバイナリー.tar.gzと展開後のファイルは$HOME/opt/mysql に置かれる。40MB………どんだけいろんなもん積んでるんだよ公式バイナリー。。
$ ll opt/mysql/ total 79712 drwxrwxr-x 7 mysql mysql 4096 Dec 14 18:46 5.7.17 -rw-rw-r-- 1 mysql mysql 40959490 Jan 6 07:56 5.7.17.tar.gz drwxrwxr-x 7 mysql mysql 4096 Sep 12 15:22 8.0.0 -rw-rw-r-- 1 mysql mysql 40654528 Jan 6 07:57 8.0.0.tar.gz
0 件のコメント :
コメントを投稿