Specifying Program Options 4.2.2.4 Program Option Modifiers 4.2.2.5 Using Options to Set Program Variables 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: 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: 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  --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. 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: The values  ON ,  TRUE ,  OFF , and  FALSE  are also recognized for boolean options (not case-sensitive). The “enabled”  form of the option may be specified in any of these ways: The  --disable  and  --skip  prefixes and the  =0  suffix all have the same effect: They turn the option off. To disable column names, you can specify the option using any of these forms: 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. --disable-column-names --skip-column-names --column-names=0 --column-names --enable-column-names --column-names=1 shell>  mysql --loose-no-such-option mysql: WARNING: unknown option ’--loose-no-such-option’ Maximum value of ’back_log’ cannot be set mysql --max_allowed_packet=16777216 352