diff options
Diffstat (limited to 'dev-db/mysql')
-rw-r--r-- | dev-db/mysql/Manifest | 4 | ||||
-rw-r--r-- | dev-db/mysql/mysql-5.6.40-r2.ebuild | 34 | ||||
-rw-r--r-- | dev-db/mysql/mysql-5.6.41.ebuild | 34 |
3 files changed, 56 insertions, 16 deletions
diff --git a/dev-db/mysql/Manifest b/dev-db/mysql/Manifest index 2d93d2c317dd..d360a7eb7002 100644 --- a/dev-db/mysql/Manifest +++ b/dev-db/mysql/Manifest @@ -10,7 +10,7 @@ DIST mysql-5.6.41.tar.gz 32111985 BLAKE2B 5ccad59333525b354db4fa892857e237cddf8f DIST mysql-boost-5.7.23.tar.gz 49025014 BLAKE2B 669f10779bc2cda866d6bd876b4efe55fb4b0c796f596f66513a3ca85f322e2a03e9879eecd72a69729a0cb71d408c46cdd9086ae456712b4adff6ae7c584c97 SHA512 e4317f89d108a68652cd95e41ffd670c37b6663aabd6af3985d18052fb7e8d8879b5822399caf9091cecc0a949ec588c121c87cfd60d69941f68d0ecbedd0953 DIST mysql-extras-20180804-2323Z.tar.bz2 322215 BLAKE2B cca9e502e375bf43473335868517f6c450fc7bcf03e55de5a294c8bdcfcac2bb783dec09bbb3b6c30a561ba7e3a943543c017e2d42b61d466e699acdef4c0231 SHA512 efd9d416f394cc61b977ab76f05ab3acc5803ff8bdee8e1dbc65cc5b3f07e4f9742140d9586c028908b10fcc44f21c98ebffdebcc5c3578acbe05b07526bcb3d EBUILD mysql-5.5.61.ebuild 25516 BLAKE2B 3363fc9f99fb6a3085a7de3cf540ddd853365b5865a418c752255417040ca568fa16a02e0b74cd98502eeadda4d11e7bd37269d1416232db279eedee15630320 SHA512 ccfbdef198de75215efb498a76525e03f469a5c596b9fe366f9e1973969f928263be1628b378369d76899eea6d7750c45ce07827d11b0f277b2aee2242540645 -EBUILD mysql-5.6.40-r2.ebuild 25125 BLAKE2B 2b3aba06d0cb8ef8b5237c920aaa072569de954e8f6e3c0f86536b53f666eb826d6fd0f4b218690a30bb5f7f27cd52ae75130750e76ec319095627b0b4e52a7c SHA512 31bf120a4a7d4d4ec9cc5cda155ea085fa5a843190273e4a8d7da0a283fada58782b281b60d6a72828e126defb97982c98b27a3c832f8f90f81832a568b15c19 -EBUILD mysql-5.6.41.ebuild 25132 BLAKE2B c4a4eda7d5d55f30caf4f500c5e67ddc4b3b129fbdd71e10a9cbec07f1da04d931e35caf5ba0ab6cdc08d6da9f86ec575a100538c945d73069ba89f819272501 SHA512 531fbecde63be61078dd7be79b3a11abb11ff8e266dd3ef093775e5c2f66b5f2305735242939f53d047be1494c630f4cfb14fdea2f0c0451f67c33fd5bd13352 +EBUILD mysql-5.6.40-r2.ebuild 25633 BLAKE2B f8ec8617de040020878220e209fa36331f8570906177c950b36cca698c6864b38d8fc98eb7daf5b9f3536a2872ad5f5bc2dbaba8f72cd86894bb0bc5ca1385dd SHA512 9b3973d9c6c6c019f0b760f1b2a1f78b46337276d81b2c6b986c2e38a4aee5d4856ca5dde3f39ff33e503871ff6c9962da08a3ebfe1c74e52e970912908ee136 +EBUILD mysql-5.6.41.ebuild 25640 BLAKE2B 5398748da6151698932be68f502e5cf958b06304eda0a392c47d4e324334375b3f5359eacc76a8a9654ed18a6fce13e47a395c636e9718adc1bb3a0b41004911 SHA512 70e2783ad591e3c005c5324e92d36dd963e3241416435f41aaf37b14de3b812dd48b715557dff4fe41026bc8020c026bf33f99e518880cf62957250fc4242efc EBUILD mysql-5.7.23.ebuild 27020 BLAKE2B b430c1582c802202d25a13049fccbbfa761d729b868ac7a22930f685c40d8e6a122a7a4c8bf8b830b17328592cb353cc33a4b32094675dac95aa957e6332652d SHA512 f1284dc26df2fee22d8f3dcdcbe3a0c34da350849fa99fcd30e661310eb51dc09ad18cdf2b65d2527d91a9bc37f96f6553b9c3994f8110b4f134bd8656711430 MISC metadata.xml 1436 BLAKE2B d05f050f50dd99df94a216e0d5b6a8837ee2b53853169a0fbd28d1cd6e2fec40d4fe87c229da31cd56a3fae18a31e5ff283ccbad6c3d69eaf06db0f6f9099f65 SHA512 987ad1be9aa1376f5819f23c457f7dbafedc703d6773281f0b56aba21da319f6b067e4c161a67c65fcec64e29482d71a5623265e3c4eda5a5398e5aa71d183c8 diff --git a/dev-db/mysql/mysql-5.6.40-r2.ebuild b/dev-db/mysql/mysql-5.6.40-r2.ebuild index b81a2ec567e0..0c2284e90808 100644 --- a/dev-db/mysql/mysql-5.6.40-r2.ebuild +++ b/dev-db/mysql/mysql-5.6.40-r2.ebuild @@ -131,8 +131,8 @@ pkg_preinst() { # Here we need to see if the implementation switched client libraries # We check if this is a new instance of the package and a client library already exists local SHOW_ABI_MESSAGE libpath - if use client-libs && [[ -z ${REPLACING_VERSIONS} && -e "${EROOT}usr/$(get_libdir)/libmysqlclient.so" ]] ; then - libpath=$(readlink "${EROOT}usr/$(get_libdir)/libmysqlclient.so") + if use client-libs && [[ -z ${REPLACING_VERSIONS} && -e "${EROOT%/}/usr/$(get_libdir)/libmysqlclient.so" ]] ; then + libpath=$(readlink "${EROOT%/}/usr/$(get_libdir)/libmysqlclient.so") elog "Due to ABI changes when switching between different client libraries," elog "revdep-rebuild must find and rebuild all packages linking to libmysqlclient." elog "Please run: revdep-rebuild --library ${libpath}" @@ -672,6 +672,12 @@ pkg_config() { # see http://bugs.mysql.com/bug.php?id=31312 use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'" + local help_tables="${EROOT%/}${MY_SHAREDSTATEDIR}/fill_help_tables.sql" + [[ -r "${help_tables}" ]] \ + && cp "${help_tables}" "${TMPDIR}/fill_help_tables.sql" \ + || touch "${TMPDIR}/fill_help_tables.sql" + help_tables="${TMPDIR}/fill_help_tables.sql" + # Figure out which options we need to disable to do the setup local helpfile="${TMPDIR%/}/mysqld-help" "${EROOT%/}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null @@ -699,13 +705,14 @@ pkg_config() { # Filling timezones, see # http://dev.mysql.com/doc/mysql/en/time-zone-support.html - echo "USE mysql;" >"${sqltmp}" "${EROOT%/}/usr/bin/mysql_tzinfo_to_sql" "${EROOT%/}/usr/share/zoneinfo" >> "${sqltmp}" 2>/dev/null chown mysql "${sqltmp}" || die - # --initialize-insecure will not set root password - # --initialize would set a random one in the log which we don't need as we set it ourselves - local cmd=( "${EROOT%/}/usr/sbin/mysqld" "--initialize-insecure" "--init-file='${sqltmp}'" ) + local cmd=( "${EROOT%/}/usr/share/mysql/scripts/mysql_install_db" ) + [[ -f "${cmd}" ]] || cmd=( "${EROOT%/}/usr/bin/mysql_install_db" ) + if [[ -r "${help_tables}" ]] ; then + cat "${help_tables}" >> "${sqltmp}" + fi cmd+=( "--basedir=${EPREFIX%/}/usr" ${options} "--datadir=${ROOT%/}${MY_DATADIR}" "--tmpdir=${ROOT%/}${MYSQL_TMPDIR}" ) einfo "Command: ${cmd[*]}" su -s /bin/sh -c "${cmd[*]}" mysql \ @@ -751,7 +758,7 @@ pkg_config() { ebegin "Setting root password" # Do this from memory, as we don't want clear text passwords in temp files - local sql="ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '${MYSQL_ROOT_PASSWORD}'" + local sql="SET PASSWORD FOR 'root'@'localhost' = PASSWORD('${MYSQL_ROOT_PASSWORD}');" "${EROOT%/}/usr/bin/mysql" \ --no-defaults \ "--socket=${socket}" \ @@ -759,6 +766,19 @@ pkg_config() { -e "${sql}" eend $? + if [[ -n "${sqltmp}" ]] ; then + ebegin "Loading \"zoneinfo\", this step may require a few seconds" + "${EROOT%/}/usr/bin/mysql" \ + --socket="${socket}" \ + -hlocalhost \ + -uroot \ + --password="${MYSQL_ROOT_PASSWORD}" \ + mysql < "${sqltmp}" + rc=$? + eend $? + [[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!" + fi + # Stop the server and cleanup einfo "Stopping the server ..." kill $(< "${pidfile}" ) diff --git a/dev-db/mysql/mysql-5.6.41.ebuild b/dev-db/mysql/mysql-5.6.41.ebuild index 7ec34a50aadc..5f5915701abf 100644 --- a/dev-db/mysql/mysql-5.6.41.ebuild +++ b/dev-db/mysql/mysql-5.6.41.ebuild @@ -131,8 +131,8 @@ pkg_preinst() { # Here we need to see if the implementation switched client libraries # We check if this is a new instance of the package and a client library already exists local SHOW_ABI_MESSAGE libpath - if use client-libs && [[ -z ${REPLACING_VERSIONS} && -e "${EROOT}usr/$(get_libdir)/libmysqlclient.so" ]] ; then - libpath=$(readlink "${EROOT}usr/$(get_libdir)/libmysqlclient.so") + if use client-libs && [[ -z ${REPLACING_VERSIONS} && -e "${EROOT%/}/usr/$(get_libdir)/libmysqlclient.so" ]] ; then + libpath=$(readlink "${EROOT%/}/usr/$(get_libdir)/libmysqlclient.so") elog "Due to ABI changes when switching between different client libraries," elog "revdep-rebuild must find and rebuild all packages linking to libmysqlclient." elog "Please run: revdep-rebuild --library ${libpath}" @@ -672,6 +672,12 @@ pkg_config() { # see http://bugs.mysql.com/bug.php?id=31312 use prefix && options="${options} '--defaults-file=${MY_SYSCONFDIR}/my.cnf'" + local help_tables="${EROOT%/}${MY_SHAREDSTATEDIR}/fill_help_tables.sql" + [[ -r "${help_tables}" ]] \ + && cp "${help_tables}" "${TMPDIR}/fill_help_tables.sql" \ + || touch "${TMPDIR}/fill_help_tables.sql" + help_tables="${TMPDIR}/fill_help_tables.sql" + # Figure out which options we need to disable to do the setup local helpfile="${TMPDIR%/}/mysqld-help" "${EROOT%/}/usr/sbin/mysqld" --verbose --help >"${helpfile}" 2>/dev/null @@ -699,13 +705,14 @@ pkg_config() { # Filling timezones, see # http://dev.mysql.com/doc/mysql/en/time-zone-support.html - echo "USE mysql;" >"${sqltmp}" "${EROOT%/}/usr/bin/mysql_tzinfo_to_sql" "${EROOT%/}/usr/share/zoneinfo" >> "${sqltmp}" 2>/dev/null chown mysql "${sqltmp}" || die - # --initialize-insecure will not set root password - # --initialize would set a random one in the log which we don't need as we set it ourselves - local cmd=( "${EROOT%/}/usr/sbin/mysqld" "--initialize-insecure" "--init-file='${sqltmp}'" ) + local cmd=( "${EROOT%/}/usr/share/mysql/scripts/mysql_install_db" ) + [[ -f "${cmd}" ]] || cmd=( "${EROOT%/}/usr/bin/mysql_install_db" ) + if [[ -r "${help_tables}" ]] ; then + cat "${help_tables}" >> "${sqltmp}" + fi cmd+=( "--basedir=${EPREFIX%/}/usr" ${options} "--datadir=${ROOT%/}${MY_DATADIR}" "--tmpdir=${ROOT%/}${MYSQL_TMPDIR}" ) einfo "Command: ${cmd[*]}" su -s /bin/sh -c "${cmd[*]}" mysql \ @@ -751,7 +758,7 @@ pkg_config() { ebegin "Setting root password" # Do this from memory, as we don't want clear text passwords in temp files - local sql="ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '${MYSQL_ROOT_PASSWORD}'" + local sql="SET PASSWORD FOR 'root'@'localhost' = PASSWORD('${MYSQL_ROOT_PASSWORD}');" "${EROOT%/}/usr/bin/mysql" \ --no-defaults \ "--socket=${socket}" \ @@ -759,6 +766,19 @@ pkg_config() { -e "${sql}" eend $? + if [[ -n "${sqltmp}" ]] ; then + ebegin "Loading \"zoneinfo\", this step may require a few seconds" + "${EROOT%/}/usr/bin/mysql" \ + --socket="${socket}" \ + -hlocalhost \ + -uroot \ + --password="${MYSQL_ROOT_PASSWORD}" \ + mysql < "${sqltmp}" + rc=$? + eend $? + [[ $rc -ne 0 ]] && ewarn "Failed to load zoneinfo!" + fi + # Stop the server and cleanup einfo "Stopping the server ..." kill $(< "${pidfile}" ) |