]> git.pld-linux.org Git - packages/mysql.git/blobdiff - mysql.init
- preserve indenting in mysqld.conf
[packages/mysql.git] / mysql.init
index b1384316971198644a970006b2dfdd6c00c04876..ee1d731b53e6c99cb34cf1a420468a141a8392ec 100644 (file)
@@ -222,7 +222,7 @@ mysqlstop() {
 
        [ "$MYSQL_PID" != "unknown" ] && kill -TERM "$MYSQL_PID" 2> /dev/null
        # 15 seconds
-       for nr in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do
+       for nr in $(seq 1 15); do
                [ -d "/proc/$MYSQL_PID" ] && sleep 1
        done
        mysqlstatus "$clusterdir"
@@ -315,7 +315,8 @@ mysqlinit() {
        c_h="" i_h="" c_hc=""  c_tzt=""
        c_u="" i_u="" c_hk=""  c_tztt=""
        c_f="" i_f="" c_hr=""  c_tzls=""
-       c_t="" c_c="" c_tzn=""
+       c_t="" c_c="" c_tzn="" c_p=""
+       c_pp=""
 
        # Check for old tables
        if test ! -f $MYSQL_DATA_DIR/mysqldb/mysql/db.frm
@@ -325,27 +326,32 @@ mysqlinit() {
          c_d="$c_d   Host char(60) DEFAULT '' NOT NULL,"
          c_d="$c_d   Db char(64) DEFAULT '' NOT NULL,"
          c_d="$c_d   User char(16) DEFAULT '' NOT NULL,"
-         c_d="$c_d   Select_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   Insert_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   Update_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   Delete_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   Create_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   Drop_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   Grant_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   References_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   Index_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   Alter_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   Create_tmp_table_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_d="$c_d   Lock_tables_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Select_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Insert_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Update_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Delete_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Create_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Drop_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Grant_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   References_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Index_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Alter_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Create_tmp_table_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Lock_tables_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Create_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Show_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Create_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Alter_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_d="$c_d   Execute_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
          c_d="$c_d PRIMARY KEY Host (Host,Db,User),"
          c_d="$c_d KEY User (User)"
          c_d="$c_d )"
          c_d="$c_d CHARACTER SET utf8 COLLATE utf8_bin"
          c_d="$c_d comment='Database privileges';"
 
-         i_d="INSERT INTO db VALUES ('%','test','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y');
-         INSERT INTO db VALUES ('%','test\_%','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y');"
-
+         i_d="INSERT INTO db VALUES ('%','test','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y','Y','Y','Y','N','N');
+         INSERT INTO db VALUES ('%','test\_%','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y','Y','Y','Y','N','N');"
+               
        fi
 
        if test ! -f $MYSQL_DATA_DIR/mysqldb/mysql/host.frm
@@ -353,18 +359,23 @@ mysqlinit() {
          c_h="$c_h CREATE TABLE host ("
          c_h="$c_h  Host char(60) DEFAULT '' NOT NULL,"
          c_h="$c_h  Db char(64) DEFAULT '' NOT NULL,"
-         c_h="$c_h  Select_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  Insert_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  Update_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  Delete_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  Create_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  Drop_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  Grant_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  References_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  Index_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  Alter_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  Create_tmp_table_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_h="$c_h  Lock_tables_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Select_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Insert_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Update_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Delete_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Create_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Drop_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Grant_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  References_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Index_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Alter_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Create_tmp_table_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Lock_tables_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Create_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Show_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Create_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Alter_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_h="$c_h  Execute_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
          c_h="$c_h  PRIMARY KEY Host (Host,Db)"
          c_h="$c_h )"
          c_h="$c_h CHARACTER SET utf8 COLLATE utf8_bin"
@@ -374,49 +385,54 @@ mysqlinit() {
        if test ! -f $MYSQL_DATA_DIR/mysqldb/mysql/user.frm
        then
          c_u="$c_u CREATE TABLE user ("
-         c_u="$c_u   Host char(60) DEFAULT '' NOT NULL,"
-         c_u="$c_u   User char(16) DEFAULT '' NOT NULL,"
-         c_u="$c_u   Password char(41) DEFAULT '' NOT NULL,"
-         c_u="$c_u   Select_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Insert_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Update_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Delete_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Create_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Drop_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Reload_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Shutdown_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Process_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   File_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Grant_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   References_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Index_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Alter_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Show_db_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Super_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Create_tmp_table_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Lock_tables_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Execute_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Repl_slave_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   Repl_client_priv enum('N','Y') DEFAULT 'N' NOT NULL,"
-         c_u="$c_u   ssl_type enum('','ANY','X509', 'SPECIFIED') DEFAULT '' NOT NULL,"
+         c_u="$c_u   Host char(60) binary DEFAULT '' NOT NULL,"
+         c_u="$c_u   User char(16) binary DEFAULT '' NOT NULL,"
+         c_u="$c_u   Password char(41) character set latin1 collate latin1_bin DEFAULT '' NOT NULL,"
+         c_u="$c_u   Select_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Insert_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Update_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Delete_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Create_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Drop_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Reload_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Shutdown_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Process_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   File_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Grant_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   References_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Index_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Alter_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Show_db_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Super_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Create_tmp_table_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Lock_tables_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Execute_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Repl_slave_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Repl_client_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Create_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Show_view_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Create_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Alter_routine_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   Create_user_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,"
+         c_u="$c_u   ssl_type enum('','ANY','X509', 'SPECIFIED') COLLATE utf8_general_ci DEFAULT '' NOT NULL,"
          c_u="$c_u   ssl_cipher BLOB NOT NULL,"
          c_u="$c_u   x509_issuer BLOB NOT NULL,"
          c_u="$c_u   x509_subject BLOB NOT NULL,"
          c_u="$c_u   max_questions int(11) unsigned DEFAULT 0  NOT NULL,"
          c_u="$c_u   max_updates int(11) unsigned DEFAULT 0  NOT NULL,"
          c_u="$c_u   max_connections int(11) unsigned DEFAULT 0  NOT NULL,"
+         c_u="$c_u   max_user_connections int(11) unsigned DEFAULT 0  NOT NULL,"
          c_u="$c_u   PRIMARY KEY Host (Host,User)"
-         c_u="$c_u )"
+         c_u="$c_u ) engine=MyISAM"
          c_u="$c_u CHARACTER SET utf8 COLLATE utf8_bin"
          c_u="$c_u comment='Users and global privileges';"
 
-         i_u="INSERT INTO user VALUES ('localhost','mysql','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);
-         INSERT INTO user VALUES ('$hostname','mysql','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);
-
-         REPLACE INTO user VALUES ('localhost','mysql','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);
-         REPLACE INTO user VALUES ('$hostname','mysql','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);
 
-         INSERT INTO user VALUES ('localhost','mysql_logrotate','','N','N','N','N','N','N','Y','N','N','N','N','N','N','N','N','N','N','N','N','N','N','','','','',0,0,0);"
+         i_u="INSERT INTO user VALUES ('localhost','mysql','','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 user VALUES ('$hostname',          'mysql','','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 user (host,user) values ('localhost','');
+         INSERT INTO user (host,user) values ('$hostname','');
+         INSERT INTO user VALUES ('localhost','mysql_logrotate','','N','N','N','N','N','N','Y','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','','','','',0,0,0,0);"
        fi
 
        if test ! -f $MYSQL_DATA_DIR/mysqldb/mysql/func.frm
@@ -425,7 +441,7 @@ mysqlinit() {
          c_f="$c_f   name char(64) DEFAULT '' NOT NULL,"
          c_f="$c_f   ret tinyint(1) DEFAULT '0' NOT NULL,"
          c_f="$c_f   dl char(128) DEFAULT '' NOT NULL,"
-         c_f="$c_f   type enum ('function','aggregate') NOT NULL,"
+         c_f="$c_f   type enum ('function','aggregate') COLLATE utf8_general_ci NOT NULL,"
          c_f="$c_f   PRIMARY KEY (name)"
          c_f="$c_f )"
          c_f="$c_f CHARACTER SET utf8 COLLATE utf8_bin"
@@ -441,8 +457,8 @@ mysqlinit() {
          c_t="$c_t   Table_name char(60) DEFAULT '' NOT NULL,"
          c_t="$c_t   Grantor char(77) DEFAULT '' NOT NULL,"
          c_t="$c_t   Timestamp timestamp(14),"
-         c_t="$c_t   Table_priv set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter') DEFAULT '' NOT NULL,"
-         c_t="$c_t   Column_priv set('Select','Insert','Update','References') DEFAULT '' NOT NULL,"
+         c_t="$c_t   Table_priv set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index', 'Alter','Create View','Show view') COLLATE utf8_general_ci DEFAULT '' NOT NULL,"
+         c_t="$c_t   Column_priv set('Select','Insert','Update','References') COLLATE utf8_general_ci DEFAULT '' NOT NULL,"
          c_t="$c_t   PRIMARY KEY (Host,Db,User,Table_name),"
          c_t="$c_t   KEY Grantor (Grantor)"
          c_t="$c_t )"
@@ -459,13 +475,32 @@ mysqlinit() {
          c_c="$c_c   Table_name char(64) DEFAULT '' NOT NULL,"
          c_c="$c_c   Column_name char(64) DEFAULT '' NOT NULL,"
          c_c="$c_c   Timestamp timestamp(14),"
-         c_c="$c_c   Column_priv set('Select','Insert','Update','References') DEFAULT '' NOT NULL,"
+         c_c="$c_c   Column_priv set('Select','Insert','Update','References') COLLATE utf8_general_ci DEFAULT '' NOT NULL,"
          c_c="$c_c   PRIMARY KEY (Host,Db,User,Table_name,Column_name)"
          c_c="$c_c )"
          c_c="$c_c CHARACTER SET utf8 COLLATE utf8_bin"
          c_c="$c_c comment='Column privileges';"
        fi
 
+       if test ! -f $MYSQL_DATA_DIR/mysqldb/mysql/procs_priv.frm
+       then
+      c_pp="$c_pp CREATE TABLE procs_priv ("
+         c_pp="$c_pp   Host char(60) binary DEFAULT '' NOT NULL,"
+         c_pp="$c_pp   Db char(64) binary DEFAULT '' NOT NULL,"
+         c_pp="$c_pp   User char(16) binary DEFAULT '' NOT NULL,"
+         c_pp="$c_pp   Routine_name char(64) binary DEFAULT '' NOT NULL,"
+         c_pp="$c_pp   Routine_type enum('FUNCTION','PROCEDURE') NOT NULL,"
+         c_pp="$c_pp   Grantor char(77) DEFAULT '' NOT NULL,"
+         c_pp="$c_pp   Proc_priv set('Execute','Alter Routine','Grant') COLLATE utf8_general_ci DEFAULT '' NOT NULL,"
+         c_pp="$c_pp   Timestamp timestamp(14),"
+         c_pp="$c_pp   PRIMARY KEY (Host,Db,User,Routine_name,Routine_type),"
+         c_pp="$c_pp   KEY Grantor (Grantor)"
+         c_pp="$c_pp )"
+         c_pp="$c_pp CHARACTER SET utf8 COLLATE utf8_bin"
+         c_pp="$c_pp   comment='Procedure privileges';"
+    fi
+
+
        if test ! -f $MYSQL_DATA_DIR/mysqldb/mysql/help_topic.frm
        then
          c_ht="$c_ht CREATE TABLE help_topic ("
@@ -578,6 +613,66 @@ mysqlinit() {
          c_tzls="$c_tzls   comment='Leap seconds information for time zones';"
        fi
 
+       if test ! -f $MYSQL_DATA_DIR/mysqldb/mysql/proc.frm
+       then
+         c_p="$c_p CREATE TABLE proc ("
+         c_p="$c_p   db                char(64) collate utf8_bin DEFAULT '' NOT NULL,"
+         c_p="$c_p   name              char(64) DEFAULT '' NOT NULL,"
+         c_p="$c_p   type              enum('FUNCTION','PROCEDURE') NOT NULL,"
+         c_p="$c_p   specific_name     char(64) DEFAULT '' NOT NULL,"
+         c_p="$c_p   language          enum('SQL') DEFAULT 'SQL' NOT NULL,"
+         c_p="$c_p   sql_data_access   enum('CONTAINS_SQL',"
+         c_p="$c_p                          'NO_SQL',"
+         c_p="$c_p                          'READS_SQL_DATA',"
+         c_p="$c_p                          'MODIFIES_SQL_DATA'"
+         c_p="$c_p                     ) DEFAULT 'CONTAINS_SQL' NOT NULL,"
+         c_p="$c_p   is_deterministic  enum('YES','NO') DEFAULT 'NO' NOT NULL,"
+         c_p="$c_p   security_type     enum('INVOKER','DEFINER') DEFAULT 'DEFINER' NOT NULL,"
+         c_p="$c_p   param_list        blob DEFAULT '' NOT NULL,"
+         c_p="$c_p   returns           char(64) DEFAULT '' NOT NULL,"
+         c_p="$c_p   body              longblob DEFAULT '' NOT NULL,"
+         c_p="$c_p   definer           char(77) collate utf8_bin DEFAULT '' NOT NULL,"
+         c_p="$c_p   created           timestamp,"
+         c_p="$c_p   modified          timestamp,"
+         c_p="$c_p   sql_mode          set("
+         c_p="$c_p                         'REAL_AS_FLOAT',"
+         c_p="$c_p                         'PIPES_AS_CONCAT',"
+         c_p="$c_p                         'ANSI_QUOTES',"
+         c_p="$c_p                         'IGNORE_SPACE',"
+         c_p="$c_p                         'NOT_USED',"
+         c_p="$c_p                         'ONLY_FULL_GROUP_BY',"
+         c_p="$c_p                         'NO_UNSIGNED_SUBTRACTION',"
+         c_p="$c_p                         'NO_DIR_IN_CREATE',"
+         c_p="$c_p                         'POSTGRESQL',"
+         c_p="$c_p                         'ORACLE',"
+         c_p="$c_p                         'MSSQL',"
+         c_p="$c_p                         'DB2',"
+         c_p="$c_p                         'MAXDB',"
+         c_p="$c_p                         'NO_KEY_OPTIONS',"
+         c_p="$c_p                         'NO_TABLE_OPTIONS',"
+         c_p="$c_p                         'NO_FIELD_OPTIONS',"
+         c_p="$c_p                         'MYSQL323',"
+         c_p="$c_p                         'MYSQL40',"
+         c_p="$c_p                         'ANSI',"
+         c_p="$c_p                         'NO_AUTO_VALUE_ON_ZERO',"
+         c_p="$c_p                         'NO_BACKSLASH_ESCAPES',"
+         c_p="$c_p                         'STRICT_TRANS_TABLES',"
+         c_p="$c_p                         'STRICT_ALL_TABLES',"
+         c_p="$c_p                         'NO_ZERO_IN_DATE',"
+         c_p="$c_p                         'NO_ZERO_DATE',"
+         c_p="$c_p                         'INVALID_DATES',"
+         c_p="$c_p                         'ERROR_FOR_DIVISION_BY_ZERO',"
+         c_p="$c_p                         'TRADITIONAL',"
+         c_p="$c_p                         'NO_AUTO_CREATE_USER',"
+         c_p="$c_p                         'HIGH_NOT_PRECEDENCE'"
+         c_p="$c_p                     ) DEFAULT '' NOT NULL,"
+         c_p="$c_p   comment           char(64) collate utf8_bin DEFAULT '' NOT NULL,"
+         c_p="$c_p   PRIMARY KEY (db,name,type)"
+         c_p="$c_p )"
+         c_p="$c_p character set utf8"
+         c_p="$c_p comment='Stored Procedures';"
+       fi
+
        mkdir -p "$MYSQL_DATA_DIR" > /dev/null 2>&1
        # Using mysql:mysql for MYSQL_CLUSTER_DIR is creating SECURITY hole, root:root is proper
        chown root:root "$MYSQL_CLUSTER_DIR"
@@ -585,9 +680,9 @@ mysqlinit() {
        chmod 751 "$MYSQL_CLUSTER_DIR" "$MYSQL_CLUSTER_DIR/mysqldb"
 
        if [ -f /usr/share/mysql/mysqld.conf -a ! -f "$MYSQL_CLUSTER_DIR/mysqld.conf" ]; then
-           sed -e "s#datadir.*=.*#datadir      = $MYSQL_DATA_DIR#g" \
-               -e "s#pid-file.*=.*#pid-file = $MYSQL_PIDFILE#g" \
-               -e "s#socket.*=.*#socket = $MYSQL_SOCKET#g" \
+           sed -e "s#\(datadir.*\)=.*#\1= $MYSQL_DATA_DIR#g" \
+               -e "s#\(pid-file.*\)=.*#\1= $MYSQL_PIDFILE#g" \
+               -e "s#\(socket.*\)=.*#\1= $MYSQL_SOCKET#g" \
                /usr/share/mysql/mysqld.conf > "$MYSQL_CLUSTER_DIR/mysqld.conf"
            chown root:root "$MYSQL_CLUSTER_DIR/mysqld.conf"
            chmod 640 "$MYSQL_CLUSTER_DIR/mysqld.conf"
@@ -626,17 +721,20 @@ $c_tz
 $c_tzt
 $c_tztt
 $c_tzls
+
+$c_p
+$c_pp
 END_OF_DATA
        then
            ok
        cat << END_OF_MSG
 
 PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL USERS!
-This is done (after starting database) with:
+This is done (after starting database; press enter when asked for password) with:
 
-/usr/bin/mysqladmin -u mysql -S $MYSQL_SOCKET password 'password'
-/usr/bin/mysqladmin -h $hostname -u mysql -S $MYSQL_SOCKET password 'password'
-/usr/bin/mysqladmin -u mysql_logrotate -S $MYSQL_SOCKET password 'password'
+/usr/bin/mysqladmin -u mysql -p -S $MYSQL_SOCKET password 'password'
+/usr/bin/mysqladmin -h $hostname -u mysql -p -S $MYSQL_SOCKET password 'password'
+/usr/bin/mysqladmin -u mysql_logrotate -p -S $MYSQL_SOCKET password 'password'
 
 NOTE: mysql_logrotate password should be placed to $MYSQL_CONFIG in
 mysqladmin section. See the manual for more instructions.
This page took 0.039736 seconds and 4 git commands to generate.