Loading Makefile.am +1 −1 Original line number Diff line number Diff line Loading @@ -102,7 +102,7 @@ dist-hook: rm -rf `find $(distdir) -type d -name SCCS -print` rm -f `find $(distdir) -type l -print` mkdir -p $(distdir)/win scripts/mysql_install_db --no-defaults --windows \ scripts/mysql_install_db --no-defaults --cross-bootstrap \ --basedir=$(top_builddir) \ --datadir=$(distdir)/win/data \ --srcdir=$(top_srcdir) Loading configure.in +2 −2 Original line number Diff line number Diff line Loading @@ -7,7 +7,7 @@ AC_INIT(sql/mysqld.cc) AC_CANONICAL_SYSTEM # The Docs Makefile.am parses this line! # remember to also change ndb version below and update version.c in ndb AM_INIT_AUTOMAKE(mysql, 5.0.54) AM_INIT_AUTOMAKE(mysql, 5.0.52) AM_CONFIG_HEADER([include/config.h:config.h.in]) PROTOCOL_VERSION=10 Loading @@ -23,7 +23,7 @@ NDB_SHARED_LIB_VERSION=$NDB_SHARED_LIB_MAJOR_VERSION:0:0 # ndb version NDB_VERSION_MAJOR=5 NDB_VERSION_MINOR=0 NDB_VERSION_BUILD=54 NDB_VERSION_BUILD=52 NDB_VERSION_STATUS="" # Set all version vars based on $VERSION. How do we do this more elegant ? Loading scripts/mysql_install_db.sh +37 −29 Original line number Diff line number Diff line Loading @@ -30,13 +30,15 @@ user="" force=0 in_rpm=0 ip_only=0 windows=0 cross_bootstrap=0 usage() { cat <<EOF Usage: $0 [OPTIONS] --basedir=path The path to the MySQL installation directory. --cross-bootstrap For internal use. Used when building the MySQL system tables on a different host than the target. --datadir=path The path to the MySQL data directory. --force Causes mysql_install_db to run even if DNS does not work. In that case, grant table entries that normally Loading @@ -56,8 +58,6 @@ Usage: $0 [OPTIONS] user. You must be root to use this option. By default mysqld runs using your current login name and files and directories that it creates will be owned by you. --windows For internal use. This option is used for creating Windows distributions. All other options are passed to the mysqld program Loading @@ -67,7 +67,7 @@ EOF s_echo() { if test "$in_rpm" -eq 0 -a "$windows" -eq 0 if test "$in_rpm" -eq 0 -a "$cross_bootstrap" -eq 0 then echo "$1" fi Loading Loading @@ -109,16 +109,17 @@ parse_arguments() --no-defaults|--defaults-file=*|--defaults-extra-file=*) defaults="$arg" ;; --windows) # This is actually a "cross bootstrap" argument used when # building the MySQL system tables on a different host # than the target. The platform independent # files that are created in --datadir on the host can # be copied to the target system, the most common use for # this feature is in the windows installer which will take # the files from datadir and include them as part of the install # package. windows=1 ;; --cross-bootstrap|--windows) # Used when building the MySQL system tables on a different host than # the target. The platform-independent files that are created in # --datadir on the host can be copied to the target system. # # The most common use for this feature is in the Windows installer # which will take the files from datadir and include them as part of # the install package. See top-level 'dist-hook' make target. # # --windows is a deprecated alias cross_bootstrap=1 ;; *) if test -n "$pick_args" Loading Loading @@ -213,8 +214,8 @@ then pkgdatadir="@pkgdatadir@" else bindir="$basedir/bin" # We set up bootstrap-specific paths later, so skip this for --windows if test "$windows" -eq 0 # We set up bootstrap-specific paths later, so skip this for now if test "$cross_bootstrap" -eq 0 then pkgdatadir=`find_in_basedir --dir fill_help_tables.sql share share/mysql` if test -z "$pkgdatadir" Loading Loading @@ -256,8 +257,8 @@ do fi done # Set up Windows-specific paths if test "$windows" -eq 1 # Set up bootstrap-specific paths if test "$cross_bootstrap" -eq 1 then mysqld="./sql/mysqld" if test -n "$srcdir" -a -f "$srcdir/sql/share/english/errmsg.sys" Loading @@ -280,7 +281,7 @@ fi hostname=`@HOSTNAME@` # Check if hostname is valid if test "$windows" -eq 0 -a "$in_rpm" -eq 0 -a "$force" -eq 0 if test "$cross_bootstrap" -eq 0 -a "$in_rpm" -eq 0 -a "$force" -eq 0 then resolved=`$bindir/resolveip $hostname 2>&1` if [ $? -ne 0 ] Loading Loading @@ -329,6 +330,16 @@ then args="$args --user=$user" fi # When doing a "cross bootstrap" install, no reference to the current # host should be added to the system tables. So we filter out any # lines which contain the current host name. if test $cross_bootstrap -eq 1 then filter_cmd_line="sed -e '/@current_hostname/d'" else filter_cmd_line="cat" fi # Peform the install of system tables mysqld_bootstrap="${MYSQLD_BOOTSTRAP-$mysqld}" mysqld_install_cmd_line="$mysqld_bootstrap $defaults $mysqld_opt --bootstrap \ Loading @@ -337,15 +348,14 @@ mysqld_install_cmd_line="$mysqld_bootstrap $defaults $mysqld_opt --bootstrap \ # Pipe mysql_system_tables.sql to "mysqld --bootstrap" s_echo "Installing MySQL system tables..." if `(echo "use mysql;"; cat $create_system_tables $fill_system_tables) | $mysqld_install_cmd_line` if { echo "use mysql;"; cat $create_system_tables $fill_system_tables; } | eval "$filter_cmd_line" | $mysqld_install_cmd_line > /dev/null then s_echo "OK" s_echo "Filling help tables..." # Pipe fill_help_tables.sql to "mysqld --bootstrap" if `(echo "use mysql;"; cat $fill_help_tables) | $mysqld_install_cmd_line` if { echo "use mysql;"; cat $fill_help_tables; } | $mysqld_install_cmd_line > /dev/null then # Fill suceeded s_echo "OK" else echo Loading @@ -359,14 +369,12 @@ then s_echo "support-files/mysql.server to the right place for your system" s_echo if test "$windows" -eq 0 if test "$cross_bootstrap" -eq 0 then # A root password should of course also be set on Windows! # The reason for not displaying these prompts here is that when # executing this script with the --windows argument the script # is used to generate system tables mainly used by the # windows installer. And thus the password should not be set until # those files has been copied to the target system # This is not a true installation on a running system. The end user must # set a password after installing the data files on the real host system. # At this point, there is no end user, so it does not make sense to print # this reminder. echo "PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !" echo "To do so, start the server, then issue the following commands:" echo "$bindir/mysqladmin -u root password 'new-password'" Loading scripts/mysql_system_tables_data.sql +8 −3 Original line number Diff line number Diff line Loading @@ -2,6 +2,12 @@ -- The inital data for system tables of MySQL Server -- -- When setting up a "cross bootstrap" database (e.g., creating data on a Unix -- host which will later be included in a Windows zip file), any lines -- containing "@current_hostname" are filtered out by mysql_install_db. set @current_hostname= @@hostname; -- Fill "db" table with default grants for anyone to -- access database 'test' and 'test_%' if "db" table didn't exist CREATE TEMPORARY TABLE tmp_db LIKE db; Loading @@ -15,10 +21,9 @@ DROP TABLE tmp_db; -- from local machine if "users" table didn't exist before CREATE TEMPORARY TABLE tmp_user LIKE user; INSERT INTO tmp_user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0); set @hostname= @@hostname; REPLACE INTO tmp_user VALUES (@hostname,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0); REPLACE INTO tmp_user VALUES (@current_hostname,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0); REPLACE INTO tmp_user VALUES ('127.0.0.1','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0); INSERT INTO tmp_user (host,user) VALUES ('localhost',''); INSERT INTO tmp_user (host,user) VALUES (@@hostname,''); INSERT INTO tmp_user (host,user) VALUES (@current_hostname,''); INSERT INTO user SELECT * FROM tmp_user WHERE @had_user_table=0; DROP TABLE tmp_user; Loading
Makefile.am +1 −1 Original line number Diff line number Diff line Loading @@ -102,7 +102,7 @@ dist-hook: rm -rf `find $(distdir) -type d -name SCCS -print` rm -f `find $(distdir) -type l -print` mkdir -p $(distdir)/win scripts/mysql_install_db --no-defaults --windows \ scripts/mysql_install_db --no-defaults --cross-bootstrap \ --basedir=$(top_builddir) \ --datadir=$(distdir)/win/data \ --srcdir=$(top_srcdir) Loading
configure.in +2 −2 Original line number Diff line number Diff line Loading @@ -7,7 +7,7 @@ AC_INIT(sql/mysqld.cc) AC_CANONICAL_SYSTEM # The Docs Makefile.am parses this line! # remember to also change ndb version below and update version.c in ndb AM_INIT_AUTOMAKE(mysql, 5.0.54) AM_INIT_AUTOMAKE(mysql, 5.0.52) AM_CONFIG_HEADER([include/config.h:config.h.in]) PROTOCOL_VERSION=10 Loading @@ -23,7 +23,7 @@ NDB_SHARED_LIB_VERSION=$NDB_SHARED_LIB_MAJOR_VERSION:0:0 # ndb version NDB_VERSION_MAJOR=5 NDB_VERSION_MINOR=0 NDB_VERSION_BUILD=54 NDB_VERSION_BUILD=52 NDB_VERSION_STATUS="" # Set all version vars based on $VERSION. How do we do this more elegant ? Loading
scripts/mysql_install_db.sh +37 −29 Original line number Diff line number Diff line Loading @@ -30,13 +30,15 @@ user="" force=0 in_rpm=0 ip_only=0 windows=0 cross_bootstrap=0 usage() { cat <<EOF Usage: $0 [OPTIONS] --basedir=path The path to the MySQL installation directory. --cross-bootstrap For internal use. Used when building the MySQL system tables on a different host than the target. --datadir=path The path to the MySQL data directory. --force Causes mysql_install_db to run even if DNS does not work. In that case, grant table entries that normally Loading @@ -56,8 +58,6 @@ Usage: $0 [OPTIONS] user. You must be root to use this option. By default mysqld runs using your current login name and files and directories that it creates will be owned by you. --windows For internal use. This option is used for creating Windows distributions. All other options are passed to the mysqld program Loading @@ -67,7 +67,7 @@ EOF s_echo() { if test "$in_rpm" -eq 0 -a "$windows" -eq 0 if test "$in_rpm" -eq 0 -a "$cross_bootstrap" -eq 0 then echo "$1" fi Loading Loading @@ -109,16 +109,17 @@ parse_arguments() --no-defaults|--defaults-file=*|--defaults-extra-file=*) defaults="$arg" ;; --windows) # This is actually a "cross bootstrap" argument used when # building the MySQL system tables on a different host # than the target. The platform independent # files that are created in --datadir on the host can # be copied to the target system, the most common use for # this feature is in the windows installer which will take # the files from datadir and include them as part of the install # package. windows=1 ;; --cross-bootstrap|--windows) # Used when building the MySQL system tables on a different host than # the target. The platform-independent files that are created in # --datadir on the host can be copied to the target system. # # The most common use for this feature is in the Windows installer # which will take the files from datadir and include them as part of # the install package. See top-level 'dist-hook' make target. # # --windows is a deprecated alias cross_bootstrap=1 ;; *) if test -n "$pick_args" Loading Loading @@ -213,8 +214,8 @@ then pkgdatadir="@pkgdatadir@" else bindir="$basedir/bin" # We set up bootstrap-specific paths later, so skip this for --windows if test "$windows" -eq 0 # We set up bootstrap-specific paths later, so skip this for now if test "$cross_bootstrap" -eq 0 then pkgdatadir=`find_in_basedir --dir fill_help_tables.sql share share/mysql` if test -z "$pkgdatadir" Loading Loading @@ -256,8 +257,8 @@ do fi done # Set up Windows-specific paths if test "$windows" -eq 1 # Set up bootstrap-specific paths if test "$cross_bootstrap" -eq 1 then mysqld="./sql/mysqld" if test -n "$srcdir" -a -f "$srcdir/sql/share/english/errmsg.sys" Loading @@ -280,7 +281,7 @@ fi hostname=`@HOSTNAME@` # Check if hostname is valid if test "$windows" -eq 0 -a "$in_rpm" -eq 0 -a "$force" -eq 0 if test "$cross_bootstrap" -eq 0 -a "$in_rpm" -eq 0 -a "$force" -eq 0 then resolved=`$bindir/resolveip $hostname 2>&1` if [ $? -ne 0 ] Loading Loading @@ -329,6 +330,16 @@ then args="$args --user=$user" fi # When doing a "cross bootstrap" install, no reference to the current # host should be added to the system tables. So we filter out any # lines which contain the current host name. if test $cross_bootstrap -eq 1 then filter_cmd_line="sed -e '/@current_hostname/d'" else filter_cmd_line="cat" fi # Peform the install of system tables mysqld_bootstrap="${MYSQLD_BOOTSTRAP-$mysqld}" mysqld_install_cmd_line="$mysqld_bootstrap $defaults $mysqld_opt --bootstrap \ Loading @@ -337,15 +348,14 @@ mysqld_install_cmd_line="$mysqld_bootstrap $defaults $mysqld_opt --bootstrap \ # Pipe mysql_system_tables.sql to "mysqld --bootstrap" s_echo "Installing MySQL system tables..." if `(echo "use mysql;"; cat $create_system_tables $fill_system_tables) | $mysqld_install_cmd_line` if { echo "use mysql;"; cat $create_system_tables $fill_system_tables; } | eval "$filter_cmd_line" | $mysqld_install_cmd_line > /dev/null then s_echo "OK" s_echo "Filling help tables..." # Pipe fill_help_tables.sql to "mysqld --bootstrap" if `(echo "use mysql;"; cat $fill_help_tables) | $mysqld_install_cmd_line` if { echo "use mysql;"; cat $fill_help_tables; } | $mysqld_install_cmd_line > /dev/null then # Fill suceeded s_echo "OK" else echo Loading @@ -359,14 +369,12 @@ then s_echo "support-files/mysql.server to the right place for your system" s_echo if test "$windows" -eq 0 if test "$cross_bootstrap" -eq 0 then # A root password should of course also be set on Windows! # The reason for not displaying these prompts here is that when # executing this script with the --windows argument the script # is used to generate system tables mainly used by the # windows installer. And thus the password should not be set until # those files has been copied to the target system # This is not a true installation on a running system. The end user must # set a password after installing the data files on the real host system. # At this point, there is no end user, so it does not make sense to print # this reminder. echo "PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !" echo "To do so, start the server, then issue the following commands:" echo "$bindir/mysqladmin -u root password 'new-password'" Loading
scripts/mysql_system_tables_data.sql +8 −3 Original line number Diff line number Diff line Loading @@ -2,6 +2,12 @@ -- The inital data for system tables of MySQL Server -- -- When setting up a "cross bootstrap" database (e.g., creating data on a Unix -- host which will later be included in a Windows zip file), any lines -- containing "@current_hostname" are filtered out by mysql_install_db. set @current_hostname= @@hostname; -- Fill "db" table with default grants for anyone to -- access database 'test' and 'test_%' if "db" table didn't exist CREATE TEMPORARY TABLE tmp_db LIKE db; Loading @@ -15,10 +21,9 @@ DROP TABLE tmp_db; -- from local machine if "users" table didn't exist before CREATE TEMPORARY TABLE tmp_user LIKE user; INSERT INTO tmp_user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0); set @hostname= @@hostname; REPLACE INTO tmp_user VALUES (@hostname,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0); REPLACE INTO tmp_user VALUES (@current_hostname,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0); REPLACE INTO tmp_user VALUES ('127.0.0.1','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0); INSERT INTO tmp_user (host,user) VALUES ('localhost',''); INSERT INTO tmp_user (host,user) VALUES (@@hostname,''); INSERT INTO tmp_user (host,user) VALUES (@current_hostname,''); INSERT INTO user SELECT * FROM tmp_user WHERE @had_user_table=0; DROP TABLE tmp_user;