Comments (2)
As of version 1.16.0, dbdeployer can download remote MySQL tarballs from a Github repository. The tarball are reduced ones, created inside Mysql-Docker-Minimal.
The tarballs are only available for Linux. However, since the URL for the files is customizable, you can use your own repository to download files for other operating systems.
Example:
$ dbdeployer remote list
Files available in https://raw.githubusercontent.com/datacharmer/mysql-docker-minimal/master/dbdata/available.json
4.1 -> [4.1.22]
5.0 -> [5.0.15 5.0.96]
5.1 -> [5.1.72]
5.5 -> [5.5.60 5.5.61]
5.6 -> [5.6.40 5.6.41]
5.7 -> [5.7.23 5.7.34]
8.0 -> [8.0.12 8.0.13]
msandbox@testdb:~$ dbdeployer remote download 8.0.13
File /home/msandbox/8.0.13.tar.xz downloaded
msandbox@testdb:~$ dbdeployer unpack 8.0.13.tar.xz
Unpacking tarball 8.0.13.tar.xz to $HOME/opt/mysql/8.0.13
.......79
Tarballs for other operating systems (or from other distributions, such as Percona Server, may be made available if someone gives me access to a reliable server that can host the files.
Specifically, minimal tarballs for MacOS are going to be larger than the ones for Linux, and therefore I am skipping plans to include them in the current repository for the time being.
from dbdeployer.
This feature is high in the TODO list.
dbdeployer's antecedent, MySQL-Sandbox, has such feature (make_sandbox GET:5.7
).
That feature uses a fixed location (my Github repository for reduced MySQL tarballs).
In dbdeployer, it should become dbdeployer unpack GET:5.7
or dbdeployer unpack GET:5.7.xx
or dbdeployer unpack --repo-url=https://someplace.org tarball-name
.
There are four reasons for delaying the same feature in dbdeployer:
- the location used is not appropriate for this purpose. GitHub should not be used as a data repository, and the latest releases of MySQL, even when stripped of all unnecessary files, are beyond the recommended limit of 50 MB.
- The MySQL Community team at Oracle has promised to provide such repository, but it is taking some time.
- The repository should not only offer a simple MySQL tarball for each version, but also some flavors, such as:
- complete and ofter unnecessarily heavy MySQL tarball
- reduced tarball (the very minimum)
- Reduced tarball with just MySQL server + debug server and plugins
- MySQL server + MySQL shell + MySQL router
- The current repository is only for Linux tarballs. I should add MacOs ones and maintain them.
In short, I don't want to release a feature that depends on a location that might not be sustainable.
The alternative to using Oracle's official repository (when it is provided) is that someone in the MySQL community commits to maintaining the repository with a dedicated web server.
BTW, in your examples above, the package to download for MacOs is always a .tar.gz, not a .dmg.
from dbdeployer.
Related Issues (20)
- Required flag, yet has default? HOT 2
- MariaDB-10.10 puts dbdeployer's port calculation based on version beyond acceptable 64k port number HOT 2
- switch master-slave? HOT 1
- "./my" prefix script adds "my" in front of the tool name HOT 4
- 1.69.2 isn't in releases, but the dbdeployer-install.sh wants it to be. HOT 2
- how to upgrade dbdeployer <1.36 HOT 2
- Sandbox start script gives an error message if the current working directory path has spaces in it. HOT 3
- show_binlog expects different log files HOT 3
- dbdeployer tests don't run on recent Ubuntu versions in Github actions HOT 1
- unknown option '--initialize-insecure' HOT 2
- dbdeployer 1.72.0 OSX binary missing HOT 1
- Percona 8.0.32 sandbox - can't convert 'msb_ps8_0_32' into port number HOT 2
- MySQL 8.0.33 Added HOT 2
- Add support for .tar archives as downloaded from dev.mysql.com HOT 16
- update does not update config file HOT 3
- Tests are failing after merge HOT 6
- Unable to upgrade sandbox MariaDB 10.3.22 to 10.11.X via dbdeployer HOT 1
- Error installing MySQL Shell (>= 8.0.30 (included 8.1.1)) HOT 1
- DBdeployer Mysql is not writting the error or slow logs HOT 3
- New maintainer wanted
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dbdeployer.