| 1 | # Copyright 1999-2007 Gentoo Foundation |
1 | # Copyright 1999-2007 Gentoo Foundation |
| 2 | # Distributed under the terms of the GNU General Public License v2 |
2 | # Distributed under the terms of the GNU General Public License v2 |
| 3 | # $Header: /var/cvsroot/gentoo-x86/eclass/mysql.eclass,v 1.94 2008/05/29 05:33:49 robbat2 Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/mysql.eclass,v 1.105 2009/02/11 11:28:16 robbat2 Exp $ |
| 4 | |
4 | |
| 5 | # Author: Francesco Riosa (Retired) <vivo@gentoo.org> |
5 | # Author: Francesco Riosa (Retired) <vivo@gentoo.org> |
| 6 | # Maintainer: MySQL Team <mysql-bugs@gentoo.org> |
6 | # Maintainer: MySQL Team <mysql-bugs@gentoo.org> |
| 7 | # - Luca Longinotti <chtekk@gentoo.org> |
7 | # - Luca Longinotti <chtekk@gentoo.org> |
| 8 | # - Robin H. Johnson <robbat2@gentoo.org> |
8 | # - Robin H. Johnson <robbat2@gentoo.org> |
| 9 | |
9 | |
| 10 | WANT_AUTOCONF="latest" |
10 | WANT_AUTOCONF="latest" |
| 11 | WANT_AUTOMAKE="latest" |
11 | WANT_AUTOMAKE="latest" |
| 12 | |
12 | |
| 13 | inherit eutils flag-o-matic gnuconfig autotools mysql_fx |
13 | inherit eutils flag-o-matic gnuconfig autotools mysql_fx versionator |
| 14 | |
14 | |
| 15 | # Shorten the path because the socket path length must be shorter than 107 chars |
15 | # Shorten the path because the socket path length must be shorter than 107 chars |
| 16 | # and we will run a mysql server during test phase |
16 | # and we will run a mysql server during test phase |
| 17 | S="${WORKDIR}/mysql" |
17 | S="${WORKDIR}/mysql" |
| 18 | |
18 | |
| … | |
… | |
| 80 | [[ ${IS_BITKEEPER} -eq 90 ]] && DEPEND="${DEPEND} dev-util/bk_client" |
80 | [[ ${IS_BITKEEPER} -eq 90 ]] && DEPEND="${DEPEND} dev-util/bk_client" |
| 81 | |
81 | |
| 82 | |
82 | |
| 83 | # dev-perl/DBD-mysql is needed by some scripts installed by MySQL |
83 | # dev-perl/DBD-mysql is needed by some scripts installed by MySQL |
| 84 | PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )" |
84 | PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )" |
|
|
85 | |
|
|
86 | # For other stuff to bring us in |
|
|
87 | PDEPEND="${PDEPEND} =virtual/mysql-$(get_version_component_range 1-2 ${PV})" |
| 85 | |
88 | |
| 86 | # Work out the default SERVER_URI correctly |
89 | # Work out the default SERVER_URI correctly |
| 87 | if [ -z "${SERVER_URI}" ]; then |
90 | if [ -z "${SERVER_URI}" ]; then |
| 88 | # The community build is on the mirrors |
91 | # The community build is on the mirrors |
| 89 | if [ "${PN}" == "mysql-community" ]; then |
92 | if [ "${PN}" == "mysql-community" ]; then |
| … | |
… | |
| 240 | fi |
243 | fi |
| 241 | elog "MySQL MY_DATADIR is ${MY_DATADIR}" |
244 | elog "MySQL MY_DATADIR is ${MY_DATADIR}" |
| 242 | |
245 | |
| 243 | if [[ -z "${PREVIOUS_DATADIR}" ]] ; then |
246 | if [[ -z "${PREVIOUS_DATADIR}" ]] ; then |
| 244 | if [[ -e "${MY_DATADIR}" ]] ; then |
247 | if [[ -e "${MY_DATADIR}" ]] ; then |
| 245 | elog "Previous datadir found, it's YOUR job to change" |
248 | # If you get this and you're wondering about it, see bug #207636 |
| 246 | elog "ownership and take care of it" |
249 | elog "MySQL datadir found in ${MY_DATADIR}" |
|
|
250 | elog "A new one will not be created." |
| 247 | PREVIOUS_DATADIR="yes" |
251 | PREVIOUS_DATADIR="yes" |
| 248 | else |
252 | else |
| 249 | PREVIOUS_DATADIR="no" |
253 | PREVIOUS_DATADIR="no" |
| 250 | fi |
254 | fi |
| 251 | export PREVIOUS_DATADIR |
255 | export PREVIOUS_DATADIR |
| … | |
… | |
| 312 | mysql_version_is_at_least "4.1.3" \ |
316 | mysql_version_is_at_least "4.1.3" \ |
| 313 | && use cluster \ |
317 | && use cluster \ |
| 314 | && myconf="${myconf} --without-ndb-debug" |
318 | && myconf="${myconf} --without-ndb-debug" |
| 315 | fi |
319 | fi |
| 316 | |
320 | |
|
|
321 | if [ -n "${MYSQL_DEFAULT_CHARSET}" -a -n "${MYSQL_DEFAULT_COLLATION}" ]; then |
|
|
322 | ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}" |
|
|
323 | ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}." |
|
|
324 | ewarn "You MUST file bugs without these variables set." |
|
|
325 | myconf="${myconf} --with-charset=${MYSQL_DEFAULT_CHARSET}" |
|
|
326 | myconf="${myconf} --with-collation=${MYSQL_DEFAULT_COLLATION}" |
| 317 | if mysql_version_is_at_least "4.1" && ! use latin1 ; then |
327 | elif mysql_version_is_at_least "4.1" && ! use latin1 ; then |
| 318 | myconf="${myconf} --with-charset=utf8" |
328 | myconf="${myconf} --with-charset=utf8" |
| 319 | myconf="${myconf} --with-collation=utf8_general_ci" |
329 | myconf="${myconf} --with-collation=utf8_general_ci" |
| 320 | else |
330 | else |
| 321 | myconf="${myconf} --with-charset=latin1" |
331 | myconf="${myconf} --with-charset=latin1" |
| 322 | myconf="${myconf} --with-collation=latin1_swedish_ci" |
332 | myconf="${myconf} --with-collation=latin1_swedish_ci" |
| 323 | fi |
333 | fi |
| 324 | |
334 | |
| 325 | if use embedded ; then |
335 | if use embedded ; then |
| 326 | myconf="${myconf} --with-embedded-privilege-control" |
336 | myconf="${myconf} --with-embedded-privilege-control" |
| 327 | myconf="${myconf} --with-embedded-server" |
337 | myconf="${myconf} --with-embedded-server" |
| … | |
… | |
| 350 | myconf="${myconf} $(use_with ssl)" |
360 | myconf="${myconf} $(use_with ssl)" |
| 351 | else |
361 | else |
| 352 | myconf="${myconf} $(use_with ssl openssl)" |
362 | myconf="${myconf} $(use_with ssl openssl)" |
| 353 | fi |
363 | fi |
| 354 | |
364 | |
|
|
365 | if mysql_version_is_at_least "5.0.60" ; then |
| 355 | if use berkdb ; then |
366 | if use berkdb ; then |
|
|
367 | elog "Berkeley DB support was disabled due to build failures" |
|
|
368 | elog "on multiple arches, go to a version earlier than 5.0.60" |
|
|
369 | elog "if you want it again. Gentoo bug #224067." |
|
|
370 | fi |
|
|
371 | myconf="${myconf} --without-berkeley-db" |
|
|
372 | elif use berkdb ; then |
| 356 | # The following fix is due to a bug with bdb on SPARC's. See: |
373 | # The following fix is due to a bug with bdb on SPARC's. See: |
| 357 | # http://www.geocrawler.com/mail/msg.php3?msg_id=4754814&list=8 |
374 | # http://www.geocrawler.com/mail/msg.php3?msg_id=4754814&list=8 |
| 358 | # It comes down to non-64-bit safety problems. |
375 | # It comes down to non-64-bit safety problems. |
| 359 | if use alpha || use amd64 || use hppa || use mips || use sparc ; then |
376 | if use alpha || use amd64 || use hppa || use mips || use sparc ; then |
| 360 | elog "Berkeley DB support was disabled due to compatibility issues on this arch" |
377 | elog "Berkeley DB support was disabled due to compatibility issues on this arch" |
| … | |
… | |
| 387 | if mysql_version_is_at_least "5.0.3" ; then |
404 | if mysql_version_is_at_least "5.0.3" ; then |
| 388 | elog "Before using the Federated storage engine, please be sure to read" |
405 | elog "Before using the Federated storage engine, please be sure to read" |
| 389 | elog "http://dev.mysql.com/doc/mysql/en/federated-limitations.html" |
406 | elog "http://dev.mysql.com/doc/mysql/en/federated-limitations.html" |
| 390 | myconf="${myconf} --with-federated-storage-engine" |
407 | myconf="${myconf} --with-federated-storage-engine" |
| 391 | fi |
408 | fi |
|
|
409 | fi |
|
|
410 | |
|
|
411 | if [ "${PN}" == "mysql-community" ]; then |
|
|
412 | myconf="${myconf} --enable-community-features" |
| 392 | fi |
413 | fi |
| 393 | |
414 | |
| 394 | mysql_version_is_at_least "5.0.18" \ |
415 | mysql_version_is_at_least "5.0.18" \ |
| 395 | && use max-idx-128 \ |
416 | && use max-idx-128 \ |
| 396 | && myconf="${myconf} --with-max-indexes=128" |
417 | && myconf="${myconf} --with-max-indexes=128" |
| … | |
… | |
| 468 | # |
489 | # |
| 469 | mysql_pkg_setup() { |
490 | mysql_pkg_setup() { |
| 470 | if hasq test ${FEATURES} ; then |
491 | if hasq test ${FEATURES} ; then |
| 471 | if ! use minimal ; then |
492 | if ! use minimal ; then |
| 472 | if [[ $UID -eq 0 ]]; then |
493 | if [[ $UID -eq 0 ]]; then |
| 473 | die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root." |
494 | eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root." |
| 474 | fi |
495 | fi |
| 475 | fi |
496 | fi |
| 476 | fi |
497 | fi |
| 477 | |
|
|
| 478 | # Bug #213475 - MySQL _will_ object strenously if your machine is named |
|
|
| 479 | # localhost. Also causes weird failures. |
|
|
| 480 | [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost" |
|
|
| 481 | |
498 | |
| 482 | # Check for USE flag problems in pkg_setup |
499 | # Check for USE flag problems in pkg_setup |
| 483 | if use static && use ssl ; then |
500 | if use static && use ssl ; then |
| 484 | eerror "MySQL does not support being built statically with SSL support enabled!" |
501 | eerror "MySQL does not support being built statically with SSL support enabled!" |
| 485 | die "MySQL does not support being built statically with SSL support enabled!" |
502 | die "MySQL does not support being built statically with SSL support enabled!" |
| … | |
… | |
| 497 | && ( use cluster || use extraengine ) \ |
514 | && ( use cluster || use extraengine ) \ |
| 498 | && use minimal ; then |
515 | && use minimal ; then |
| 499 | eerror "USE flags 'cluster' and 'extraengine' conflict with 'minimal' USE flag!" |
516 | eerror "USE flags 'cluster' and 'extraengine' conflict with 'minimal' USE flag!" |
| 500 | die "USE flags 'cluster' and 'extraengine' conflict with 'minimal' USE flag!" |
517 | die "USE flags 'cluster' and 'extraengine' conflict with 'minimal' USE flag!" |
| 501 | fi |
518 | fi |
| 502 | |
519 | |
| 503 | # This should come after all of the die statements |
520 | # This should come after all of the die statements |
| 504 | enewgroup mysql 60 || die "problem adding 'mysql' group" |
521 | enewgroup mysql 60 || die "problem adding 'mysql' group" |
| 505 | enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user" |
522 | enewuser mysql 60 -1 /dev/null mysql || die "problem adding 'mysql' user" |
| 506 | |
523 | |
| 507 | mysql_check_version_range "4.0 to 5.0.99.99" \ |
524 | mysql_check_version_range "4.0 to 5.0.99.99" \ |
| … | |
… | |
| 586 | if mysql_check_version_range "4.1 to 5.0.99.99" \ |
603 | if mysql_check_version_range "4.1 to 5.0.99.99" \ |
| 587 | && use berkdb ; then |
604 | && use berkdb ; then |
| 588 | [[ -w "bdb/dist/ltmain.sh" ]] && cp -f "ltmain.sh" "bdb/dist/ltmain.sh" |
605 | [[ -w "bdb/dist/ltmain.sh" ]] && cp -f "ltmain.sh" "bdb/dist/ltmain.sh" |
| 589 | cp -f "/usr/share/aclocal/libtool.m4" "bdb/dist/aclocal/libtool.ac" \ |
606 | cp -f "/usr/share/aclocal/libtool.m4" "bdb/dist/aclocal/libtool.ac" \ |
| 590 | || die "Could not copy libtool.m4 to bdb/dist/" |
607 | || die "Could not copy libtool.m4 to bdb/dist/" |
|
|
608 | #These files exist only with libtool-2*, and need to be included. |
|
|
609 | if [ -f '/usr/share/aclocal/ltsugar.m4' ]; then |
|
|
610 | cat "/usr/share/aclocal/ltsugar.m4" >> "bdb/dist/aclocal/libtool.ac" |
|
|
611 | cat "/usr/share/aclocal/ltversion.m4" >> "bdb/dist/aclocal/libtool.ac" |
|
|
612 | cat "/usr/share/aclocal/lt~obsolete.m4" >> "bdb/dist/aclocal/libtool.ac" |
|
|
613 | cat "/usr/share/aclocal/ltoptions.m4" >> "bdb/dist/aclocal/libtool.ac" |
|
|
614 | fi |
| 591 | pushd "bdb/dist" &>/dev/null |
615 | pushd "bdb/dist" &>/dev/null |
| 592 | sh s_all \ |
616 | sh s_all \ |
| 593 | || die "Failed bdb reconfigure" |
617 | || die "Failed bdb reconfigure" |
| 594 | popd &>/dev/null |
618 | popd &>/dev/null |
| 595 | fi |
619 | fi |
| … | |
… | |
| 616 | # Bug #114895, bug #110149 |
640 | # Bug #114895, bug #110149 |
| 617 | filter-flags "-O" "-O[01]" |
641 | filter-flags "-O" "-O[01]" |
| 618 | |
642 | |
| 619 | # glib-2.3.2_pre fix, bug #16496 |
643 | # glib-2.3.2_pre fix, bug #16496 |
| 620 | append-flags "-DHAVE_ERRNO_AS_DEFINE=1" |
644 | append-flags "-DHAVE_ERRNO_AS_DEFINE=1" |
|
|
645 | |
|
|
646 | # As discovered by bug #246652, doing a double-level of SSP causes NDB to |
|
|
647 | # fail badly during cluster startup. |
|
|
648 | if [[ $(gcc-major-version) -lt 4 ]]; then |
|
|
649 | filter-flags "-fstack-protector-all" |
|
|
650 | fi |
| 621 | |
651 | |
| 622 | CXXFLAGS="${CXXFLAGS} -fno-exceptions -fno-strict-aliasing" |
652 | CXXFLAGS="${CXXFLAGS} -fno-exceptions -fno-strict-aliasing" |
| 623 | CXXFLAGS="${CXXFLAGS} -felide-constructors -fno-rtti" |
653 | CXXFLAGS="${CXXFLAGS} -felide-constructors -fno-rtti" |
| 624 | mysql_version_is_at_least "5.0" \ |
654 | mysql_version_is_at_least "5.0" \ |
| 625 | && CXXFLAGS="${CXXFLAGS} -fno-implicit-templates" |
655 | && CXXFLAGS="${CXXFLAGS} -fno-implicit-templates" |
| … | |
… | |
| 659 | |
689 | |
| 660 | insinto "${MY_INCLUDEDIR}" |
690 | insinto "${MY_INCLUDEDIR}" |
| 661 | doins "${MY_INCLUDEDIR}"/my_{config,dir}.h |
691 | doins "${MY_INCLUDEDIR}"/my_{config,dir}.h |
| 662 | |
692 | |
| 663 | # Convenience links |
693 | # Convenience links |
|
|
694 | einfo "Making Convenience links for mysqlcheck multi-call binary" |
| 664 | dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlanalyze" |
695 | dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlanalyze" |
| 665 | dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlrepair" |
696 | dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlrepair" |
| 666 | dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqloptimize" |
697 | dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqloptimize" |
| 667 | |
698 | |
| 668 | # Various junk (my-*.cnf moved elsewhere) |
699 | # Various junk (my-*.cnf moved elsewhere) |
|
|
700 | einfo "Removing duplicate /usr/share/mysql files" |
| 669 | rm -Rf "${D}/usr/share/info" |
701 | rm -Rf "${D}/usr/share/info" |
| 670 | for removeme in "mysql-log-rotate" mysql.server* \ |
702 | for removeme in "mysql-log-rotate" mysql.server* \ |
| 671 | binary-configure* my-*.cnf mi_test_all* |
703 | binary-configure* my-*.cnf mi_test_all* |
| 672 | do |
704 | do |
| 673 | rm -f "${D}"/usr/share/mysql/${removeme} |
705 | rm -f "${D}"/usr/share/mysql/${removeme} |
| 674 | done |
706 | done |
| 675 | |
707 | |
| 676 | # Clean up stuff for a minimal build |
708 | # Clean up stuff for a minimal build |
| 677 | if use minimal ; then |
709 | if use minimal ; then |
|
|
710 | einfo "Remove all extra content for minimal build" |
| 678 | rm -Rf "${D}${MY_SHAREDSTATEDIR}"/{mysql-test,sql-bench} |
711 | rm -Rf "${D}${MY_SHAREDSTATEDIR}"/{mysql-test,sql-bench} |
| 679 | rm -f "${D}"/usr/bin/{mysql{_install_db,manager*,_secure_installation,_fix_privilege_tables,hotcopy,_convert_table_format,d_multi,_fix_extensions,_zap,_explain_log,_tableinfo,d_safe,_install,_waitpid,binlog,test},myisam*,isam*,pack_isam} |
712 | rm -f "${D}"/usr/bin/{mysql{_install_db,manager*,_secure_installation,_fix_privilege_tables,hotcopy,_convert_table_format,d_multi,_fix_extensions,_zap,_explain_log,_tableinfo,d_safe,_install,_waitpid,binlog,test},myisam*,isam*,pack_isam} |
| 680 | rm -f "${D}/usr/sbin/mysqld" |
713 | rm -f "${D}/usr/sbin/mysqld" |
| 681 | rm -f "${D}${MY_LIBDIR}"/lib{heap,merge,nisam,my{sys,strings,sqld,isammrg,isam},vio,dbug}.a |
714 | rm -f "${D}${MY_LIBDIR}"/lib{heap,merge,nisam,my{sys,strings,sqld,isammrg,isam},vio,dbug}.a |
| 682 | fi |
715 | fi |
| … | |
… | |
| 685 | if mysql_version_is_at_least "4.1" ; then |
718 | if mysql_version_is_at_least "4.1" ; then |
| 686 | mysql_mycnf_version="4.1" |
719 | mysql_mycnf_version="4.1" |
| 687 | else |
720 | else |
| 688 | mysql_mycnf_version="4.0" |
721 | mysql_mycnf_version="4.0" |
| 689 | fi |
722 | fi |
|
|
723 | einfo "Building default my.cnf" |
| 690 | insinto "${MY_SYSCONFDIR}" |
724 | insinto "${MY_SYSCONFDIR}" |
| 691 | doins scripts/mysqlaccess.conf |
725 | doins scripts/mysqlaccess.conf |
| 692 | sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ |
726 | sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ |
| 693 | "${FILESDIR}/my.cnf-${mysql_mycnf_version}" \ |
727 | "${FILESDIR}/my.cnf-${mysql_mycnf_version}" \ |
| 694 | > "${TMPDIR}/my.cnf.ok" |
728 | > "${TMPDIR}/my.cnf.ok" |
| … | |
… | |
| 697 | fi |
731 | fi |
| 698 | newins "${TMPDIR}/my.cnf.ok" my.cnf |
732 | newins "${TMPDIR}/my.cnf.ok" my.cnf |
| 699 | |
733 | |
| 700 | # Minimal builds don't have the MySQL server |
734 | # Minimal builds don't have the MySQL server |
| 701 | if ! use minimal ; then |
735 | if ! use minimal ; then |
|
|
736 | einfo "Creating initial directories" |
| 702 | # Empty directories ... |
737 | # Empty directories ... |
| 703 | diropts "-m0750" |
738 | diropts "-m0750" |
| 704 | if [[ "${PREVIOUS_DATADIR}" != "yes" ]] ; then |
739 | if [[ "${PREVIOUS_DATADIR}" != "yes" ]] ; then |
| 705 | dodir "${MY_DATADIR}" |
740 | dodir "${MY_DATADIR}" |
| 706 | keepdir "${MY_DATADIR}" |
741 | keepdir "${MY_DATADIR}" |
| … | |
… | |
| 714 | chown -R mysql:mysql "${D}/${folder}" |
749 | chown -R mysql:mysql "${D}/${folder}" |
| 715 | done |
750 | done |
| 716 | fi |
751 | fi |
| 717 | |
752 | |
| 718 | # Docs |
753 | # Docs |
|
|
754 | einfo "Installing docs" |
| 719 | dodoc README COPYING ChangeLog EXCEPTIONS-CLIENT INSTALL-SOURCE |
755 | dodoc README COPYING ChangeLog EXCEPTIONS-CLIENT INSTALL-SOURCE |
| 720 | doinfo "${S}"/Docs/mysql.info |
756 | doinfo "${S}"/Docs/mysql.info |
| 721 | |
757 | |
| 722 | # Minimal builds don't have the MySQL server |
758 | # Minimal builds don't have the MySQL server |
| 723 | if ! use minimal ; then |
759 | if ! use minimal ; then |
|
|
760 | einfo "Including support files and sample configurations" |
| 724 | docinto "support-files" |
761 | docinto "support-files" |
| 725 | for script in \ |
762 | for script in \ |
| 726 | "${S}"/support-files/my-*.cnf \ |
763 | "${S}"/support-files/my-*.cnf \ |
| 727 | "${S}"/support-files/magic \ |
764 | "${S}"/support-files/magic \ |
| 728 | "${S}"/support-files/ndb-config-2-node.ini |
765 | "${S}"/support-files/ndb-config-2-node.ini |
| … | |
… | |
| 818 | ewarn "You have already a MySQL database in place." |
855 | ewarn "You have already a MySQL database in place." |
| 819 | ewarn "(${ROOT}/${MY_DATADIR}/*)" |
856 | ewarn "(${ROOT}/${MY_DATADIR}/*)" |
| 820 | ewarn "Please rename or delete it if you wish to replace it." |
857 | ewarn "Please rename or delete it if you wish to replace it." |
| 821 | die "MySQL database already exists!" |
858 | die "MySQL database already exists!" |
| 822 | fi |
859 | fi |
|
|
860 | |
|
|
861 | # Bug #213475 - MySQL _will_ object strenously if your machine is named |
|
|
862 | # localhost. Also causes weird failures. |
|
|
863 | [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost" |
| 823 | |
864 | |
| 824 | einfo "Creating the mysql database and setting proper" |
865 | einfo "Creating the mysql database and setting proper" |
| 825 | einfo "permissions on it ..." |
866 | einfo "permissions on it ..." |
| 826 | |
867 | |
| 827 | einfo "Insert a password for the mysql 'root' user" |
868 | einfo "Insert a password for the mysql 'root' user" |