- MariaDB Cookbook
- Daniel Bartholomew
- 303字
- 2021-07-16 12:19:22
Creating a backup user
It is a bad idea to use a super user like root for making backups. One main reason is that backups often run automatically, and so the password has to be stored somewhere (for example, in the my.cnf
file). If the user that is being used for backups has full access to the database, it could be abused, or an error in a backup script could cause all sorts of trouble.
In this recipe, we will create a backup user with the minimum permissions necessary to run both the mysqldump
and XtraBackup
programs.
How to do it…
Let's get started by following the ensuing steps:
- Launch the
mysql
command-line client. - Create the backup user. For this recipe, we'll call the user
backupuser
and give the user the passwordp455w0rd
. The user can be named anything we wish, and the password should definitely be changed to something unique:CREATE USER 'backupuser'@'localhost' IDENTIFIED BY 'p455w0rd';
- Next, we will grant our new user a minimal set of permissions, just enough so that it can make backups as follows:
GRANT SELECT, SHOW VIEW, LOCK TABLES, RELOAD, REPLICATION CLIENT ON *.* TO 'backupuser'@'localhost';
- Lastly, we will use the
FLUSH PRIVILEGES
command to force MariaDB to reread the privileges table, which is always a good idea after granting new privileges to a user.FLUSH PRIVILEGES;
How it works...
There's no need for the user we use to make backups in order to have every privilege on our databases. They only need a specific subset. For example, they don't need the INSERT
or ALTER TABLE
privileges since backup users just need to read the tables in our databases. The set of privileges in this recipe are enough for both the XtraBackup
and mysqldump
programs, and will likely be sufficient for other backup programs as well.
- 程序設計與實踐(VB.NET)
- Manga Studio Ex 5 Cookbook
- Java編程指南:基礎知識、類庫應用及案例設計
- Visual Basic程序設計教程
- 高級語言程序設計(C語言版):基于計算思維能力培養
- 從Excel到Python:用Python輕松處理Excel數據(第2版)
- 好好學Java:從零基礎到項目實戰
- 計算機應用基礎教程(Windows 7+Office 2010)
- 寫給程序員的Python教程
- Android編程權威指南(第4版)
- Java高級程序設計
- HTML5 Game Development by Example:Beginner's Guide(Second Edition)
- Puppet Cookbook(Third Edition)
- Salt Cookbook
- Kali Linux Wireless Penetration Testing Essentials