簡単なバックアップとリストアをメモします。。。
・mysqlバックアップ
[root@centos ~]# mysqldump -u root -p testdb > testdb.sql
Enter password:
・mysqlリストア
[root@centos ~]# mysql -u root -p -B testdb < testdb.sql
Enter password:
・postgresqlバックアップ
[root@centos ~]# pg_dump -U postgres testdb > testdb.sql
・postgresqlリストア
[root@centos ~]# psql -U postgres -d testdb < testdb.sql
ここの例では、localhostに対してrootのパスワードを再設定する
[root@centos ~]# /etc/init.d/mysqld stop
[root@centos ~]# /usr/bin/mysqld_safe --user=root --skip-grant-tables & mysql mysql
mysql> update mysql.user set Password=null where Host='localhost' and User='root';
mysql> quit
[root@centos ~]# /etc/init.d/mysqld restart
[root@centos ~]# mysql -u root
mysql> set password for root@localhost=password('新パスワード');
ここの例では、dbtestデータベースに対して、管理ユーザdbtestを作成
[root@centos ~]# mysql -u root
mysql> create database dbtest;
mysql> grant all privileges on dbtest.* to dbtest@localhost identified by 'パスワード';
mysql> grant all privileges on dbtest.* to dbtest@localhost.localdomain identified by 'パスワード';
mysql> grant all privileges on dbtest.* to dbtest@'127.0.0.1' identified by 'パスワード';
・ユーザ一覧を確認
[root@centos ~]# mysql -u root
mysql> select user,host,password from mysql.user;
+------+-----------------------+----------+
| user | host | password |
+------+-----------------------+----------+
| root | localhost | |
| root | localhost.localdomain | |
| root | 127.0.0.1 | |
| | localhost | |
| | localhost.localdomain | |
+------+-----------------------+----------+
・rootユーザにパスワードを設定
mysql> set password for root@localhost=password('パスワード');
mysql> set password for root@'localhost.localdomain'=password('パスワード');
mysql> set password for root@'127.0.0.1'=password('パスワード');
・不要なユーザを削除
mysql> delete from mysql.user where user='';
・データベースtestを削除
mysql> drop database test;
mysql> quit
初回起動時エラーの対策です。
・現象
[root@centos ~]# /etc/init.d/mysqld start
Timeout error occurred trying to start MySQL Daemon.
MySQL を起動中: [失敗]
・エラーログ
[root@centos ~]# /var/log/mysqld.log
[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
・解決策
[root@centos ~]# mysql_install_db
[root@centos ~]# /etc/init.d/mysqld start
最近のコメント