Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
a12c1ffb
Commit
a12c1ffb
authored
Dec 26, 2000
by
monty@donna.mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
--safe-show-db and have_xxx variables
parent
75dc0953
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
260 additions
and
100 deletions
+260
-100
Docs/manual.texi
Docs/manual.texi
+192
-87
sql/gen_lex_hash.cc
sql/gen_lex_hash.cc
+1
-1
sql/mysql_priv.h
sql/mysql_priv.h
+1
-1
sql/mysqld.cc
sql/mysqld.cc
+44
-4
sql/sql_show.cc
sql/sql_show.cc
+19
-6
sql/structs.h
sql/structs.h
+3
-1
No files found.
Docs/manual.texi
View file @
a12c1ffb
...
...
@@ -135,6 +135,7 @@ version see the relevant distribution.
* MySQL internals:: @strong{MySQL} internals
* Environment variables:: @strong{MySQL} environment variables
* Users:: Some @strong{MySQL} users
* MySQL customer usage::
* Contrib:: Contributed programs
* Credits:: Contributors to @strong{MySQL}
* News:: @strong{MySQL} change history
...
...
@@ -192,7 +193,7 @@ Example Licensing Situations
* ISP:: ISP @strong{MySQL} services
* Web server:: Running a web server using @strong{MySQL}.
@strong{MySQL}
Licensing and Support Costs
MySQL
Licensing and Support Costs
* Payment information:: Payment information
* Contact information:: Contact information
...
...
@@ -222,7 +223,7 @@ Installing MySQL
* OS/2:: OS/2 notes
* MySQL binaries:: MySQL binaries
* Post-installation:: Post-installation setup and testing
* Upgrade:: Upgrading/
downgrading @strong{MySQL}
* Upgrade:: Upgrading/
Downgrading MySQL
Installing a MySQL Binary Distribution
...
...
@@ -828,6 +829,7 @@ Credits
* Developers::
* Contributors::
* Supporters::
MySQL change history
...
...
@@ -876,7 +878,7 @@ Changes in release 3.23.x (Recommended; Gamma)
* News-3.23.1:: Changes in release 3.23.1
* News-3.23.0:: Changes in release 3.23.0
Changes in release 3.22.x
Changes in release 3.22.x
(Older; Still supported)
* News-3.22.35:: Changes in release 3.22.35
* News-3.22.34:: Changes in release 3.22.34
...
...
@@ -1814,7 +1816,8 @@ In-memory hash tables which are used as temporary tables.
@item
Handles large databases. We are using @strong{MySQL} with some
databases that contain 50,000,000 records.
databases that contain 50,000,000 records and we know of users that
uses @code{MySQL} with 60,000 tables and about 5,000,000,000 rows
@item
All columns have default values. You can use @code{INSERT} to insert a
...
...
@@ -9465,16 +9468,13 @@ section in this manual. @xref{SHOW VARIABLES}.
The tuning server parameters section includes information of how to optimize
these. @xref{Server parameters}.
@item -Sg, --skip-grant-tables
This option causes the server not to use the privilege system at all. This
gives everyone @emph{full access} to all databases! (You can tell a running
server to start using the grant tables again by executing @code{mysqladmin
flush-privileges} or @code{mysqladmin reload}.)
@item --safe-mode
Skip some optimize stages.
Implies @code{--skip-delay-key-write}.
@item --safe-show-database
Don't show databases for which the user doesn't have any privileges.
@item --secure
IP numbers returned by the @code{gethostbyname()} system call are
checked to make sure they resolve back to the original hostname. This
...
...
@@ -9494,6 +9494,12 @@ in this feature).
Ignore the @code{delay_key_write} option for all tables.
@xref{Server parameters}.
@item -Sg, --skip-grant-tables
This option causes the server not to use the privilege system at all. This
gives everyone @emph{full access} to all databases! (You can tell a running
server to start using the grant tables again by executing @code{mysqladmin
flush-privileges} or @code{mysqladmin reload}.)
@item --skip-locking
Don't use system locking. To use @code{isamchk} or @code{myisamchk} you must
shut down the server. @xref{Stability}. Note that in @strong{MySQL} Version
...
...
@@ -20242,72 +20248,85 @@ The output resembles that shown below, though the format and numbers may
differ somewhat:
@example
+-------------------------+---------------------------------+
| Variable_name | Value |
+-------------------------+---------------------------------+
| ansi_mode | OFF |
| back_log | 50 |
| basedir | /usr/local/mysql/ |
| bdb_cache_size | 1048540 |
| bdb_home | /usr/local/mysql/data/ |
| bdb_logdir | |
| bdb_tmpdir | /tmp/ |
| binlog_cache_size | 32768 |
| character_set | latin1 |
| character_sets | latin1 |
| connect_timeout | 5 |
| concurrent_insert | ON |
| datadir | /usr/local/mysql/data/ |
| delay_key_write | ON |
| delayed_insert_limit | 100 |
| delayed_insert_timeout | 300 |
| delayed_queue_size | 1000 |
| join_buffer_size | 131072 |
| flush | OFF |
| flush_time | 0 |
| init_file | |
| interactive_timeout | 28800 |
| key_buffer_size | 16776192 |
| language | /usr/local/mysql/share/english/ |
| log | OFF |
| log_update | OFF |
| log_bin | OFF |
| log_slave_updates | OFF |
| long_query_time | 10 |
| low_priority_updates | OFF |
| lower_case_table_names | 0 |
| max_allowed_packet | 1047552 |
| max_connections | 100 |
| max_connect_errors | 10 |
| max_delayed_threads | 20 |
| max_heap_table_size | 16777216 |
| max_join_size | 4294967295 |
| max_sort_length | 1024 |
| max_tmp_tables | 32 |
| max_write_lock_count | 4294967295 |
| myisam_sort_buffer_size | 8388608 |
| net_buffer_length | 16384 |
| net_retry_count | 10 |
| open_files_limit | 0 |
| pid_file | /usr/local/mysql/data/tik.pid |
| port | 3306 |
| protocol_version | 10 |
| record_buffer | 131072 |
| skip_locking | ON |
| skip_networking | OFF |
| skip_show_database | OFF |
| slow_launch_time | 2 |
| socket | /tmp/mysql.sock |
| sort_buffer | 2097116 |
| table_cache | 64 |
| table_type | MYISAM |
| thread_stack | 131072 |
| thread_cache_size | 3 |
| tmp_table_size | 1048576 |
| tmpdir | /tmp/ |
| version | 3.23.21-beta-debug |
| wait_timeout | 28800 |
+-------------------------+---------------------------------+
+-------------------------+---------------------------+
| Variable_name | Value |
+-------------------------+---------------------------+
| ansi_mode | OFF |
| back_log | 50 |
| basedir | /my/monty/ |
| bdb_cache_size | 16777216 |
| bdb_home | /my/monty/data/ |
| bdb_max_lock | 10000 |
| bdb_logdir | |
| bdb_shared_data | OFF |
| bdb_tmpdir | /tmp/ |
| binlog_cache_size | 32768 |
| concurrent_insert | ON |
| connect_timeout | 5 |
| datadir | /my/monty/data/ |
| delay_key_write | ON |
| delayed_insert_limit | 100 |
| delayed_insert_timeout | 300 |
| delayed_queue_size | 1000 |
| flush | OFF |
| flush_time | 0 |
| have_bdb | YES |
| have_gemeni | NO |
| have_innobase | YES |
| have_raid | YES |
| have_ssl | NO |
| init_file | |
| interactive_timeout | 28800 |
| join_buffer_size | 131072 |
| key_buffer_size | 16776192 |
| language | /my/monty/share/english/ |
| large_files_support | ON |
| log | OFF |
| log_update | OFF |
| log_bin | OFF |
| log_slave_updates | OFF |
| long_query_time | 10 |
| low_priority_updates | OFF |
| lower_case_table_names | 0 |
| max_allowed_packet | 1048576 |
| max_binlog_cache_size | 4294967295 |
| max_connections | 100 |
| max_connect_errors | 10 |
| max_delayed_threads | 20 |
| max_heap_table_size | 16777216 |
| max_join_size | 4294967295 |
| max_sort_length | 1024 |
| max_tmp_tables | 32 |
| max_write_lock_count | 4294967295 |
| myisam_recover_options | DEFAULT |
| myisam_sort_buffer_size | 8388608 |
| net_buffer_length | 16384 |
| net_read_timeout | 30 |
| net_retry_count | 10 |
| net_write_timeout | 60 |
| open_files_limit | 0 |
| pid_file | /my/monty/data/donna.pid |
| port | 3306 |
| protocol_version | 10 |
| record_buffer | 131072 |
| query_buffer_size | 0 |
| safe_show_database | OFF |
| server_id | 0 |
| skip_locking | ON |
| skip_networking | OFF |
| skip_show_database | OFF |
| slow_launch_time | 2 |
| socket | /tmp/mysql.sock |
| sort_buffer | 2097116 |
| table_cache | 64 |
| table_type | MYISAM |
| thread_cache_size | 4 |
| thread_stack | 65536 |
| tmp_table_size | 1048576 |
| tmpdir | /tmp/ |
| version | 3.23.29a-gamma-debug |
| wait_timeout | 28800 |
+-------------------------+---------------------------+
@end example
Each option is described below. Values for buffer sizes, lengths, and stack
...
...
@@ -20427,6 +20446,21 @@ tables will be closed (to free up resources and sync things to disk). We
only recommend this option on Win95, Win98, or on systems where you have
very little resources.
@item @code{have_bdb}
@code{YES} if @code{mysqld} supports Berkeley DB tables. @code{DISABLED}
if @code{--skip-bdb} is used.
@item @code{have_gemeni}
@code{YES} if @code{mysqld} supports Gemeni tables. @code{DISABLED}
if @code{--skip-gemeni} is used.
@item @code{have_innobase}
@code{YES} if @code{mysqld} supports Innobase tables. @code{DISABLED}
if @code{--skip-innobase} is used.
@item @code{have_raid}
@code{YES} if @code{mysqld} supports the @code{RAID} option.
@item @code{have_ssl}
@code{YES} if @code{mysqld} supports SSL (encryption) on the client/server
protocol.
@item @code{init_file}
The name of the file specified with the @code{--init-file} option when
you start the server. This is a file of SQL statements you want the
...
...
@@ -20606,6 +20640,12 @@ want to increase this value.
The initial allocation of the query buffer. If most of your queries are
long (like when inserting blobs), you should increase this!
@item @code{safe_show_databases}
Don't show databases for which the user doesn't have any database or
table privileges. This can improve security if you're concerned about
people being able to see what databases other users have. See also
@code{skip_show_databases}.
@item @code{server_id}
The value of the @code{--server-id} option.
...
...
@@ -20616,10 +20656,10 @@ Is OFF if @code{mysqld} uses external locking.
Is ON if we only allow local (socket) connections.
@item @code{skip_show_databases}
This prevents people from doing @code{SHOW DATABASES} if they don't
have the @code{PROCESS_PRIV} privilege. This can improve security if
you're concerned about people being able to see what databases and
tables other users have
.
This prevents people from doing @code{SHOW DATABASES} if they don't
have
the @code{PROCESS_PRIV} privilege. This can improve security if you're
concerned about people being able to see what databases other users
have. See also @code{safe_show_databases}
.
@item @code{slow_launch_time}
If creating the thread takes longer than this value (in seconds), the
...
...
@@ -38284,9 +38324,6 @@ you should ftp all the relevant files to
@end itemize
@page
@cindex environment variables, list of
@node Environment variables, Users, MySQL internals, Top
...
...
@@ -38371,7 +38408,7 @@ variables to modify the behavior of @strong{MySQL}. @xref{Option files}.
@page
@cindex users, of MySQL
@cindex news sites
@node Users,
Contrib
, Environment variables, Top
@node Users,
MySQL customer usage
, Environment variables, Top
@appendix Some MySQL Users
@appendixsec General News Sites
...
...
@@ -38519,6 +38556,8 @@ support @strong{MySQL}}
@c @item @uref{http://dynodns.net, Free dynamic DNS implementation}
@c EMAIL: A Moore <amoore@mooresystems.com>
@item @uref{http://www.hn.org/, Hammernode; Public DNS Servers}
@item @uref{http://www.fdns.net/, Free 3rd level domains}
@item @uref{http://worldcommunity.com/, Online Database}
...
...
@@ -38773,10 +38812,44 @@ Washington's Eastside residents and businesses}
Send any additions to this list to @email{webmaster@@mysql.com}.
@page
@cindex MySQL usage
@node MySQL customer usage, Contrib, Users, Top
@appendix MySQL customer usage
The section 'Some MySQL Users' contains a lot of different links to
@strong{MySQL} users but doesn't provide that much information about how
they are using @strong{MySQL}. @xref{Users}. This manual section is to
give you an idea of how other @strong{MySQL} users are using
@strong{MySQL} to solve their problems.
This manual section is very new and we plan to add more stories here
shortly. If you are interested in contributing of how you use
@code{MySQL} in a unique environment or have success store about how you
use @code{MySQL}, you can write to @code{docs@@lists.mysql.com} with
subject @code{Success:}. Note that as we are very busy it may take some
time before you get some feedback for your story.
@itemize @bullet
@item
I think you might be interested in my database size. The whole database
is currently on 15 servers and I think it's about 60.000 of tables
containing about 5.000.000.000 of rows. My mostly loaded server
currently holds about 10.000 of tables with 1.000.000.000 of rows in it.
Hugest tables have about 50.000.000 of rows, and this value will raise
as soon as I'll move to 2.4 kernel with large files. Currently I have to
delete much of logs for large sites to hold table sizes in 2Gb.
Peter Zaitsev, Spylog.ru.
@item
Texas Instrument is using MySQL for handling tables that contains up
o 2,000 million rows in a validation regression database.
@end itemize
@page
@cindex contributed programs
@cindex programs, contributed
@node Contrib, Credits,
Users
, Top
@node Contrib, Credits,
MySQL customer usage
, Top
@appendix Contributed Programs
Many users of @strong{MySQL} have contributed @emph{very} useful support
...
...
@@ -39445,12 +39518,14 @@ interested in.
@node Credits, News, Contrib, Top
@appendix Credits
The following persons have helped us make MySQL what it is today
The following persons and companies have helped us make MySQL what it is
today:
@cindex developers, list of
@menu
* Developers::
* Contributors::
* Supporters::
@end menu
@node Developers, Contributors, Credits, Credits
...
...
@@ -39632,7 +39707,7 @@ Allan Larsson (The BOSS for TCX DataKonsult AB).
@end table
@cindex contributors, list of
@node Contributors,
, Developers, Credits
@node Contributors,
Supporters
, Developers, Credits
@appendixsubsec Contributors to MySQL
Contributors to the @strong{MySQL} distribution are listed below, in
...
...
@@ -39702,6 +39777,12 @@ For porting PHP to @strong{MySQL}.
For the first @strong{MySQL} manual. And a lot of spelling/language
fixes for the FAQ (that turned into the @strong{MySQL} manual a long
time ago).
@item Yan Cailin
First translator of the MySQL Reference Manual into simplified chinese
in early 2000 on which the Big5 and HK coded
(@uref{http://mysql.hitstar.com, mysql.hitstar.com}) versions were
based. @uref{http://linuxdb.yeah.net, Personal home page at
linuxdb.yeah.net}.
@item Giovanni Maruzzelli @email{maruzz@@matrice.it}
For porting iODBC (Unix ODBC).
@item Chris Provenzano
...
...
@@ -39857,6 +39938,24 @@ ODBC and VisualC++ interface questions.
@code{DBD}, Linux, some SQL syntax questions.
@end table
@cindex contributing companies, list of
@node Supporters, , Contributors, Credits
@appendixsubsec Supporters to MySQL
The following companies has helped us finance development of
@strong{MySQL} by either paying us for developing a new feature,
developed a @strong{MySQL} feature themself or by giving us hardware for
@strong{MySQL} development.
@multitable @columnfractions .3 .7
@item Va Linux / Andover.net @tab Replication
@item NuSphere @tab Editing of the @strong{MySQL} manual.
@item Intel @tab Contributed to development on Windows and Linux platforms
@item Compaq @tab Contributed to Development on Linux-alpha
@item SWSoft @tab Development on the embedded @code{mysqld} version.
@item FutureQuest @tab @code{--skip-show-variables}
@end multitable
@node News, Bugs, Credits, Top
@appendix MySQL change history
...
...
@@ -39948,6 +40047,12 @@ though, so Version 3.23 is not released as a stable version yet.
@appendixsubsec Changes in release 3.23.30
@itemize @bullet
@item
Added option @code{--safe-show-databases}.
@item
Added @code{have_bdb}, @code{have_gemeni}, @code{have_innobase},
@code{have_raid} and @code{have_ssl} to @code{SHOW VARIABLES} to make it
easy to test for supported extensions.
@item
Added option @code{open-files-limit} to @code{mysqld}.
@item
Changed option @code{open-files} to @code{open-files-limit} in
sql/gen_lex_hash.cc
View file @
a12c1ffb
...
...
@@ -472,7 +472,7 @@ int main(int argc,char **argv)
int
error
;
MY_INIT
(
argv
[
0
]);
start_value
=
5
206280L
;
best_t1
=
590774L
;
best_t2
=
5977654L
;
best_type
=
1
;
/* mode=6229 add=2
func_type: 0 */
start_value
=
5
307411L
;
best_t1
=
4597287L
;
best_t2
=
3375760L
;
best_type
=
1
;
/* mode=4783 add=5
func_type: 0 */
if
(
get_options
(
argc
,(
char
**
)
argv
))
exit
(
1
);
...
...
sql/mysql_priv.h
View file @
a12c1ffb
...
...
@@ -520,7 +520,7 @@ extern ulong keybuff_size,sortbuff_size,max_item_sort_length,table_cache_size,
binlog_cache_size
,
max_binlog_cache_size
;
extern
ulong
specialflag
,
current_pid
;
extern
bool
low_priority_updates
;
extern
bool
opt_sql_bin_update
;
extern
bool
opt_sql_bin_update
,
opt_safe_show_db
;
extern
char
language
[
LIBLEN
],
reg_ext
[
FN_EXTLEN
],
blob_newline
;
extern
const
char
**
errmesg
;
/* Error messages */
extern
byte
last_ref
[
MAX_REFLENGTH
];
/* Index ref of keys */
...
...
sql/mysqld.cc
View file @
a12c1ffb
...
...
@@ -146,6 +146,33 @@ static uint handler_count;
static
bool
opt_console
=
0
;
#endif
#ifdef HAVE_BERKELEY_DB
SHOW_COMP_OPTION
have_berkeley_db
=
SHOW_OPTION_YES
;
#else
SHOW_COMP_OPTION
have_berkeley_db
=
SHOW_OPTION_NO
;
#endif
#ifdef HAVE_GEMENI_DB
SHOW_COMP_OPTION
have_gemeni
=
SHOW_OPTION_YES
;
#else
SHOW_COMP_OPTION
have_gemeni
=
SHOW_OPTION_NO
;
#endif
#ifdef HAVE_INNOBASE_DB
SHOW_COMP_OPTION
have_innobase
=
SHOW_OPTION_YES
;
#else
SHOW_COMP_OPTION
have_innobase
=
SHOW_OPTION_NO
;
#endif
#ifdef USE_RAID
SHOW_COMP_OPTION
have_raid
=
SHOW_OPTION_YES
;
#else
SHOW_COMP_OPTION
have_raid
=
SHOW_OPTION_NO
;
#endif
#ifdef HAVE_OPENSSL
SHOW_COMP_OPTION
have_ssl
=
SHOW_OPTION_YES
;
#else
SHOW_COMP_OPTION
have_ssl
=
SHOW_OPTION_NO
;
#endif
static
bool
opt_skip_slave_start
=
0
;
// if set, slave is not autostarted
static
ulong
opt_specialflag
=
SPECIAL_ENGLISH
;
static
my_socket
unix_sock
=
INVALID_SOCKET
,
ip_sock
=
INVALID_SOCKET
;
...
...
@@ -155,9 +182,10 @@ static my_string opt_logname=0,opt_update_logname=0,
static
char
mysql_home
[
FN_REFLEN
],
pidfile_name
[
FN_REFLEN
];
static
pthread_t
select_thread
;
static
bool
opt_log
,
opt_update_log
,
opt_bin_log
,
opt_slow_log
,
opt_noacl
,
opt_disable_networking
=
0
,
opt_bootstrap
=
0
,
opt_skip_show_db
=
0
,
opt_ansi_mode
=
0
,
opt_myisam_log
=
0
,
opt_large_files
=
sizeof
(
my_off_t
)
>
4
;
bool
opt_sql_bin_update
=
0
,
opt_log_slave_updates
=
0
;
opt_disable_networking
=
0
,
opt_bootstrap
=
0
,
opt_skip_show_db
=
0
,
opt_ansi_mode
=
0
,
opt_myisam_log
=
0
,
opt_large_files
=
sizeof
(
my_off_t
)
>
4
;
bool
opt_sql_bin_update
=
0
,
opt_log_slave_updates
=
0
,
opt_safe_show_db
=
0
;
FILE
*
bootstrap_file
=
0
;
int
segfaulted
=
0
;
// ensure we do not enter SIGSEGV handler twice
extern
MASTER_INFO
glob_mi
;
...
...
@@ -2322,7 +2350,7 @@ enum options {
OPT_INNOBASE_DATA_HOME_DIR
,
OPT_INNOBASE_DATA_FILE_PATH
,
OPT_INNOBASE_LOG_GROUP_HOME_DIR
,
OPT_INNOBASE_LOG_ARCH_DIR
,
OPT_INNOBASE_LOG_ARCHIVE
,
OPT_INNOBASE_FLUSH_LOG_AT_TRX_COMMIT
OPT_INNOBASE_FLUSH_LOG_AT_TRX_COMMIT
,
OPT_SAFE_SHOW_DB
};
static
struct
option
long_options
[]
=
{
...
...
@@ -2424,6 +2452,7 @@ static struct option long_options[] = {
{
"replicate-rewrite-db"
,
required_argument
,
0
,
(
int
)
OPT_REPLICATE_REWRITE_DB
},
{
"safe-mode"
,
no_argument
,
0
,
(
int
)
OPT_SAFE
},
{
"safe-show-database"
,
no_argument
,
0
,
(
int
)
OPT_SAFE_SHOW_DB
},
{
"socket"
,
required_argument
,
0
,
(
int
)
OPT_SOCKET
},
{
"server-id"
,
required_argument
,
0
,
(
int
)
OPT_SERVER_ID
},
{
"set-variable"
,
required_argument
,
0
,
'O'
},
...
...
@@ -2593,6 +2622,11 @@ struct show_var_st init_vars[]= {
{
"delayed_queue_size"
,
(
char
*
)
&
delayed_queue_size
,
SHOW_LONG
},
{
"flush"
,
(
char
*
)
&
myisam_flush
,
SHOW_MY_BOOL
},
{
"flush_time"
,
(
char
*
)
&
flush_time
,
SHOW_LONG
},
{
"have_bdb"
,
(
char
*
)
&
have_berkeley_db
,
SHOW_HAVE
},
{
"have_gemeni"
,
(
char
*
)
&
have_gemeni
,
SHOW_HAVE
},
{
"have_innobase"
,
(
char
*
)
&
have_innobase
,
SHOW_HAVE
},
{
"have_raid"
,
(
char
*
)
&
have_raid
,
SHOW_HAVE
},
{
"have_ssl"
,
(
char
*
)
&
have_ssl
,
SHOW_HAVE
},
{
"init_file"
,
(
char
*
)
&
opt_init_file
,
SHOW_CHAR_PTR
},
{
"interactive_timeout"
,
(
char
*
)
&
net_interactive_timeout
,
SHOW_LONG
},
{
"join_buffer_size"
,
(
char
*
)
&
join_buff_size
,
SHOW_LONG
},
...
...
@@ -2631,6 +2665,7 @@ struct show_var_st init_vars[]= {
{
"protocol_version"
,
(
char
*
)
&
protocol_version
,
SHOW_INT
},
{
"record_buffer"
,
(
char
*
)
&
my_default_record_cache_size
,
SHOW_LONG
},
{
"query_buffer_size"
,
(
char
*
)
&
query_buff_size
,
SHOW_LONG
},
{
"safe_show_database"
,
(
char
*
)
&
opt_safe_show_db
,
SHOW_BOOL
},
{
"server_id"
,
(
char
*
)
&
server_id
,
SHOW_LONG
},
{
"skip_locking"
,
(
char
*
)
&
my_disable_locking
,
SHOW_MY_BOOL
},
{
"skip_networking"
,
(
char
*
)
&
opt_disable_networking
,
SHOW_BOOL
},
...
...
@@ -3347,11 +3382,13 @@ static void get_options(int argc,char **argv)
break
;
case
OPT_BDB_SKIP
:
berkeley_skip
=
1
;
have_berkeley_db
=
SHOW_OPTION_DISABLED
;
break
;
#endif
#ifdef HAVE_INNOBASE_DB
case
OPT_INNOBASE_SKIP
:
innobase_skip
=
1
;
have_innobase_db
=
SHOW_HAVE_DISABLED
;
break
;
case
OPT_INNOBASE_DATA_HOME_DIR
:
innobase_data_home_dir
=
optarg
;
...
...
@@ -3410,6 +3447,9 @@ static void get_options(int argc,char **argv)
case
OPT_MASTER_CONNECT_RETRY
:
master_connect_retry
=
atoi
(
optarg
);
break
;
case
(
int
)
OPT_SAFE_SHOW_DB
:
opt_safe_show_db
=
1
;
break
;
default:
fprintf
(
stderr
,
"%s: Unrecognized option: %c
\n
"
,
my_progname
,
c
);
...
...
sql/sql_show.cc
View file @
a12c1ffb
...
...
@@ -21,8 +21,6 @@
#include "sql_select.h" // For select_describe
#include "sql_acl.h"
#include <my_dir.h>
#undef USE_RAID
#define USE_RAID
#ifdef HAVE_BERKELEY_DB
#include "ha_berkeley.h" // For berkeley_show_logs
...
...
@@ -77,10 +75,17 @@ mysqld_show_dbs(THD *thd,const char *wild)
List_iterator
<
char
>
it
(
files
);
while
((
file_name
=
it
++
))
{
thd
->
packet
.
length
(
0
);
net_store_data
(
&
thd
->
packet
,
file_name
);
if
(
my_net_write
(
&
thd
->
net
,(
char
*
)
thd
->
packet
.
ptr
(),
thd
->
packet
.
length
()))
DBUG_RETURN
(
-
1
);
if
(
!
opt_safe_show_db
||
thd
->
master_access
||
acl_get
(
thd
->
host
,
thd
->
ip
,
(
char
*
)
&
thd
->
remote
.
sin_addr
,
thd
->
priv_user
,
file_name
)
||
(
grant_option
&&
!
check_grant_db
(
thd
,
file_name
)))
{
thd
->
packet
.
length
(
0
);
net_store_data
(
&
thd
->
packet
,
file_name
);
if
(
my_net_write
(
&
thd
->
net
,
(
char
*
)
thd
->
packet
.
ptr
(),
thd
->
packet
.
length
()))
DBUG_RETURN
(
-
1
);
}
}
send_eof
(
&
thd
->
net
);
DBUG_RETURN
(
0
);
...
...
@@ -1088,6 +1093,14 @@ int mysqld_show(THD *thd, const char *wild, show_var_st *variables)
case
SHOW_INT
:
net_store_data
(
&
packet2
,(
uint32
)
*
(
int
*
)
variables
[
i
].
value
);
break
;
case
SHOW_HAVE
:
{
SHOW_COMP_OPTION
tmp
=
*
(
SHOW_COMP_OPTION
*
)
variables
[
i
].
value
;
net_store_data
(
&
packet2
,
(
tmp
==
SHOW_OPTION_NO
?
"NO"
:
tmp
==
SHOW_OPTION_YES
?
"YES"
:
"DISABLED"
));
break
;
}
case
SHOW_CHAR
:
net_store_data
(
&
packet2
,
variables
[
i
].
value
);
break
;
...
...
sql/structs.h
View file @
a12c1ffb
...
...
@@ -125,7 +125,9 @@ typedef struct {
enum
SHOW_TYPE
{
SHOW_LONG
,
SHOW_CHAR
,
SHOW_INT
,
SHOW_CHAR_PTR
,
SHOW_BOOL
,
SHOW_MY_BOOL
,
SHOW_OPENTABLES
,
SHOW_STARTTIME
,
SHOW_QUESTION
,
SHOW_LONG_CONST
,
SHOW_INT_CONST
};
SHOW_LONG_CONST
,
SHOW_INT_CONST
,
SHOW_HAVE
};
enum
SHOW_COMP_OPTION
{
SHOW_OPTION_YES
,
SHOW_OPTION_NO
,
SHOW_OPTION_DISABLED
};
struct
show_var_st
{
const
char
*
name
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment