diff options
author | unknown <bar@bar.mysql.r18.ru> | 2003-05-30 13:03:56 +0500 |
---|---|---|
committer | unknown <bar@bar.mysql.r18.ru> | 2003-05-30 13:03:56 +0500 |
commit | f46e958e1e0a6ca13bb94dea7064b338c5474a8d (patch) | |
tree | 7682d84ae2c4a6586327f259fdad9663290deb15 /sql/mysqld.cc | |
parent | 69e084af1eedff2dda70fcf073dd4fa349718b69 (diff) | |
download | mariadb-git-f46e958e1e0a6ca13bb94dea7064b338c5474a8d.tar.gz |
character_set_server is now updatable
character_set_database was added
Code optimization: reuse more code for all character sets variables
sql/mysqld.cc:
character_set_server is now updatable
character_set_database was added
sql/set_var.cc:
character_set_server is now updatable
character_set_database was added
sql/set_var.h:
character_set_server is now updatable
character_set_database was added
sql/sql_base.cc:
character_set_server is now updatable
character_set_database was added
sql/sql_class.cc:
character_set_server is now updatable
character_set_database was added
sql/sql_class.h:
character_set_server is now updatable
character_set_database was added
sql/sql_db.cc:
character_set_server is now updatable
character_set_database was added
sql/sql_load.cc:
character_set_server is now updatable
character_set_database was added
sql/sql_table.cc:
character_set_server is now updatable
character_set_database was added
sql/sql_yacc.yy:
character_set_server is now updatable
character_set_database was added
BitKeeper/etc/ignore:
Added scripts/mysql_create_system_tables to the ignore list
Diffstat (limited to 'sql/mysqld.cc')
-rw-r--r-- | sql/mysqld.cc | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 6d31abc3dc9..224bfe5f878 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -300,7 +300,7 @@ char* log_error_file_ptr= log_error_file; char mysql_real_data_home[FN_REFLEN], language[LIBLEN],reg_ext[FN_EXTLEN], mysql_charsets_dir[FN_REFLEN], max_sort_char,*mysqld_user,*mysqld_chroot, *opt_init_file; -char *language_ptr, *default_collation_name; +char *language_ptr, *default_collation_name, *default_character_set_name; char mysql_data_home_buff[2], *mysql_data_home=mysql_real_data_home; char server_version[SERVER_VERSION_LENGTH]=MYSQL_SERVER_VERSION; char *mysql_unix_port, *opt_mysql_tmpdir; @@ -2028,7 +2028,7 @@ static int init_common_variables(const char *conf_file_name, int argc, #ifdef USE_REGEX regex_init(&my_charset_latin1); #endif - if (!(default_charset_info= get_charset_by_csname(sys_charset.value, + if (!(default_charset_info= get_charset_by_csname(default_character_set_name, MY_CS_PRIMARY, MYF(MY_WME)))) return 1; @@ -2046,6 +2046,8 @@ static int init_common_variables(const char *conf_file_name, int argc, } default_charset_info= default_collation; } + global_system_variables.character_set_server= default_charset_info; + global_system_variables.character_set_database= default_charset_info; global_system_variables.character_set_results= NULL; global_system_variables.character_set_client= default_charset_info; global_system_variables.collation_connection= default_charset_info; @@ -3542,8 +3544,8 @@ Disable with --skip-bdb (will save memory)", 0, 0, 0, 0, 0, 0}, #endif /* HAVE_OPENSSL */ {"default-character-set", 'C', "Set the default character set", - (gptr*) &sys_charset.value, (gptr*) &sys_charset.value, 0, GET_STR, - REQUIRED_ARG, 0, 0, 0, 0, 0, 0 }, + (gptr*) &default_character_set_name, (gptr*) &default_character_set_name, + 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 }, {"default-collation", OPT_DEFAULT_COLLATION, "Set the default collation", (gptr*) &default_collation_name, (gptr*) &default_collation_name, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0 }, @@ -4538,7 +4540,7 @@ static void use_help(void) static void usage(void) { - if (!(default_charset_info= get_charset_by_csname(sys_charset.value, + if (!(default_charset_info= get_charset_by_csname(default_character_set_name, MY_CS_PRIMARY, MYF(MY_WME)))) exit(1); @@ -4642,7 +4644,6 @@ static void mysql_init_variables(void) pidfile_name_ptr= pidfile_name; log_error_file_ptr= log_error_file; language_ptr= language; - default_collation_name= (char*) MYSQL_DEFAULT_COLLATION_NAME; mysql_data_home= mysql_real_data_home; thd_startup_options= (OPTION_UPDATE_LOG | OPTION_AUTO_IS_NULL | OPTION_BIN_LOG | OPTION_QUOTE_SHOW_CREATE); @@ -4681,10 +4682,13 @@ static void mysql_init_variables(void) /* Variables in libraries */ charsets_dir= 0; - sys_charset.value= (char*) MYSQL_DEFAULT_CHARSET_NAME; + default_character_set_name= (char*) MYSQL_DEFAULT_CHARSET_NAME; + default_collation_name= (char*) MYSQL_DEFAULT_COLLATION_NAME; sys_charset_system.value= (char*) system_charset_info->csname; /* Set default values for some option variables */ + global_system_variables.character_set_server= default_charset_info; + global_system_variables.character_set_database= default_charset_info; global_system_variables.character_set_results= NULL; global_system_variables.character_set_client= default_charset_info; global_system_variables.collation_connection= default_charset_info; |