MySQL has two types of parameters:
- Static, which takes effect after restarting MySQL server
- Dynamic, which can be changed on the fly without restarting MySQL server
Variables can be set through the following:
- Config file: MySQL has a configuration file in which we can specify the location of data, the memory that MySQL can use, and various other parameters.
- Startup script: You can directly pass the parameters to the mysqld process. It remains in effect only for that invocation of the server.
- Using SET command (only dynamic variables): This will last until the server restarts. You also need to set the variable in the config file to make the change persistent across restarts. Another way to make changes persistent is by preceding the variable name by the PERSIST keyword or @@persist.