## 4.2.2.4 Program Option Modifiers 

Some options are “boolean”  and control behavior that can be turned on or off. For example, the mysql client supports a --column-names  option that determines whether or not to display a row of column names at the beginning of query results. By default, this option is enabled. However, you may want to disable it in some instances, such as when sending the output of mysql  into another program that expects to see only data and not an initial header line. 

To disable column names, you can specify the option using any of these forms: 

--disable-column-names --skip-column-names --column-names=0 

The --disable  and --skip  prefixes and the =0  suffix all have the same effect: They turn the option off. 

The “enabled”  form of the option may be specified in any of these ways: 

--column-names --enable-column-names --column-names=1 

The values ON , TRUE , OFF , and FALSE  are also recognized for boolean options (not case-sensitive). 

If an option is prefixed by --loose , a program does not exit with an error if it does not recognize the option, but instead issues only a warning: 

shell> mysql --loose-no-such-option mysql: WARNING: unknown option ’--loose-no-such-option’ 

The --loose  prefix can be useful when you run programs from multiple installations of MySQL on the same machine and list options in an option file. An option that may not be recognized by all versions of a program can be given using the --loose  prefix (or loose  in an option file). Versions of the program that recognize the option process it normally, and versions that do not recognize it issue a warning and ignore it. 

The --maximum  prefix is available for mysqld  only and permits a limit to be placed on how large client programs can set session system variables. To do this, use a --maximum  prefix with the variable name. For example, --maximum-max_heap_table_size=32M  prevents any client from making the heap table size limit larger than 32M. 

The --maximum  prefix is intended for use with system variables that have a session value. If applied to a system variable that has only a global value, an error occurs. For example, with --maximum- back_log=200 , the server produces this error: 

## 4.2.2.5 Using Options to Set Program Variables 

Maximum value of ’back_log’ cannot be set 

Many MySQL programs have internal variables that can be set at runtime using the SET  statement. See Section 13.7.6.1, “SET Syntax for Variable Assignment” , and Section 5.1.9, “Using System Variables” . 

Most of these program variables also can be set at server startup by using the same syntax that applies to specifying program options. For example, mysql  has a max_allowed_packet  variable that controls the maximum size of its communication buffer. To set the max_allowed_packet  variable for mysql  to a value of 16MB, use either of the following commands: 

mysql --max_allowed_packet=16777216 

