### 5.5.1 Installing and Uninstalling Components

[]()[]()[]()[]()

 Components must be loaded into the server before they can be used. MySQL supports manual component loading at runtime and automatic loading during server startup.

 While a component is loaded, information about it is available as described in [Section 5.5.2, “Obtaining Component Information”](obtaining-component-information.html).

 The [`INSTALL COMPONENT`](install-component.html) and [`UNINSTALL COMPONENT`](uninstall-component.html) SQL statements enable component loading and unloading. For example:

```
INSTALL COMPONENT 'file://component_validate_password';
UNINSTALL COMPONENT 'file://component_validate_password';
```

 A loader service handles component loading and unloading, and also registers loaded components in the `mysql.component` system table.

 The SQL statements for component manipulation affect server operation and the `mysql.component` system table as follows:

* [`INSTALL COMPONENT`](install-component.html) loads components into the server. The components become active immediately. The loader service also registers loaded components in the `mysql.component` system table. For subsequent server restarts, the loader service loads any components listed in `mysql.component` during the startup sequence. This occurs even if the server is started with the [`--skip-grant-tables`](server-options.html#option_mysqld_skip-grant-tables) option.

* [`UNINSTALL COMPONENT`](uninstall-component.html) deactivates components and unloads them from the server. The loader service also unregisters the components from the `mysql.component` system table so that the server no longer loads them during its startup sequence for subsequent restarts.

 Compared to the corresponding [`INSTALL PLUGIN`](install-plugin.html) statement for server plugins, the [`INSTALL COMPONENT`](install-component.html) statement for components offers the significant advantage that it is not necessary to know any platform-specific file name suffix for naming the component. This means that a given [`INSTALL COMPONENT`](install-component.html) statement can be executed uniformly across platforms.

 A component when installed may also automatically install related loadable functions. If so, the component when uninstalled also automatically uninstalls those functions.

