俺のひとり言

Icon

一人外人の世界観、価値観、恋愛観の適当話

DBバックアップ(mysql,postgresql)

簡単なバックアップとリストアをメモします。。。

・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 

mysqlパスワード忘れた場合

ここの例では、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 'パスワード';

Mysql初期設定

・ユーザ一覧を確認

[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

mysql初回起動時エラー

初回起動時エラーの対策です。

・現象

[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 

アンケート

Xperia Z Ultra と Honami ならどっちを買う?

View Results

Loading ... Loading ...
2017年12月
« 8月    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

 


俺のひとり言トップ | Xperia云々 | 俺のアンケート | 俺の独り言 | 俺のツール | 俺のつぶやき | Linuxサーバ構築 | Windowsサーバ構築 | シンクライアント