mysql
mysql copied to clipboard
mysqlcheck missing in -oracle images
Hi.
I noticed the mysqlcheck binary is missing in 8.0.29-oracle and 8.0.28-oracle while it is present in the debian flavour.
Probably this is valid for older versions too, but I did not verify this.
What is the reason for this?
@ltangvald any ideas? Is this intentional? :see_no_evil:
I would say it's intentional, but possibly not fully thought through (the basic idea is to remove binaries that aren't needed for the docker images). I'll get a review done and see if maybe we should put some of these back.
For mysqlcheck it's partially a case of it being significantly less useful for innodb than it was for myisam, and that the checking functionality it still supports can be done through the regular client. It's a similar case for mysqlimport, which is just a wrapper around the LOAD DATA syntax. The binlog utility we might want to include, though. As a side note, the list of files that are excluded from the minimal server package can be seen at https://github.com/mysql/mysql-server/blob/8.0/packaging/rpm-docker/mysql.spec.in#L231
It's pobably fine without Mysqlcheck, but why mysqlbinlog is also removed? That's something very important for data recovery.
@ltangvald I can follow your argumentation. On the other hand, having 2 container image types (Debian/oracle) with different toolsets does not make any sense to me. people use those tools in their scripts and workflows for years now and you break this just to save a couple of bytes in the container? The issues that get filed on GitHub show that people use these tools, so why not just include them? Let the people decide if they find them useful or not.
A year later and those tools still not in oracle image, on top of that there is no debian image for mysql 8.1, so there is nothing to revert to when you need 8.1 and tools.
@chtomek the tag mysql:8.1 is debian based
@chtomek the tag
mysql:8.1is debian based
@LaurentGoderre are you sure?
Default OS is always Oracle. If the tag does not contain the OS flag, it is Oracle.
Oh yeah, my bad
I don't get it, what's the point of shaving off 10MB on those tools when everyone has at least a coule of GB worth images in their repo.
all of these tools are in the mysql-community-client package. docker image has only server package installed, but for client: common, libs and client-plugins package has to be installed and there are conflicts with the server minimal package. I am happy with the current image, but the name is somewhat confusing, maybe we can rename it to -mimimal (and add another fat image including client).
@qeepcologne thank you for that explenation, now all make sense. I'm sure many would appreciat that "fat" image. In the mean time bitnami/mysql:8.1 if someone needs tools, although 50MB bigger (if size is a concern)