Linux下移动了数据库 pgsql目录到另一个文件下,恢复后,启动服务提示无

Linux下移动了数据库 pgsql目录到另一个文件下,恢复后,启动服务提示无,第1张

在postgresqlconf中修改 listen_addresses = '' 在pg_hbaconf文件中添加 host all all 0000/0 md5 (md5连接需要密码登录,trust不需要密码)

Copyright © 1999-2020, CSDNNET, All Rights Reserved

mysql

登录

Linux 关于MYSQL数据库命令(查看,备份等 *** 作) 原创

2016-04-19 11:22:33

fuwen1989

码龄7年

关注

1Linux系统下启动MySQL的命令

/ect/initd/mysql start (前面为mysql的安装路径)

2linux下重启mysql的命令:

/ect/initd/mysql restart (前面为mysql的安装路径)

3linux下关闭mysql的命令:

/ect/initd/mysql shutdown (前面为mysql的安装路径)

4连接本机上的mysql:

进入目录mysql\bin,再键入命令mysql -u root -p, 回车后提示输入密码。

5打开数据库后的 *** 作命令

查看数据库的命令

mysql> show databases;

打开mydb库

mysql> use mydb;

查看数据表的详细结构

mysql> desc funtb;

新建数据库

mysql> create database school;

新建表

mysql> create table user01(

-> id varchar(20) NOT NULL,

-> userName varchar(10) NOT NULL,

-> age int(11) default'0',

-> sex char(2) NOT NULL default'm',

-> PRIMARY KEY (id)

-> )TYPE=InnoDB;

Query OK, 0 rows affected, 1 warning (002 sec)

mysql>desc student;

插入

mysql> insert into student(id,stuName) values('1','tomcat');

删除

mysql> delete from student where id='1';

删除表中所有数据

mysql> truncate table student;

删除表

mysql> drop table temp;

创建新用户并给予权限

mysql> grant all privileges on to dbuser@localhost identified by '1234'

with grant option;

更改Mysql用户密码

c:\Mysql50\bin>mysqladmin -u root -p password 1234

Enter password:

备份数据库及表(新版数据库不加3306端口号)

c:\mysql\bin\>mysqldump –u root –p mydb >d:\backupsql

执行此语句将把数据库mydb 备份到D盘的backupsql文件中

备份多个数据库表

c:\mysql\bin\>mysqldump –u root –p 3306 school user01 user >d:\backupsql

此句的意思是把school库中的user01表和user表的内容和表的定义备份到D盘backupsql文件中。

备份所有的数据库

c:\myql\bin>mysqldump –u root –p 3306 –all –database>d:backupsql

还原Mysql数据库

c:\mysql\bin\mysql –u root –p 3306 school

还原其中的一个表

mysql> source d:\bookssql;

退出Mysql连接

mysql>quit(exit)

windows关闭mysql服务

C:\mysql\bin>net mysql

DB2数据库离线和在线全备、增量备份及恢复的具体 *** 作步骤:

1、离线全备份

(1)、首先确保没有用户使用DB2:

$db2 list applications for db sample

(2)、停掉数据库并重新启动,以便断掉所有连接:

db2stop force

db2start

(3)、执行备份命令:(使用TSM作为备份的介质)

db2 backup db sample use tsm

备份成功,将会返回一个时间戳。

(4)、检查备份成功:

Db2 list history backup all for sample ,可以看到多了这个备份的纪录。

Db2adutl query命令也可以看到返回值。

(5)、备注:

首先对主节点(catalog表空间在的节点)执行备份命令,再对另外的节点也做这个 *** 作。

2、 在线备份:

(1)、首先打开一下支持在线备份的数据库配置参数:

db2 update db cfg for sample using userexit on 启用用户出口

db2 update db cfg for sample using logretain on 启用归档日志

db2 update db cfg for sample using trackmod on 启用增量备份功能

(需要各个Node都分别做设置)

开启这些参数后,数据库处于backup pending状态,要求做数据库的离线全备份。做一下离线全备份,参考上面的命令。

(2)、在线备份命令如下:

db2 backup db sample online use tsm

备份成功,返回一个时间戳。

(3)、同样可以用db2adutl 和db2 list history察看备份纪录。

(4)、备注:

同样,对每个节点都做这个 *** 作。

3、 在线增量备份

(1)、在开启了必须的三个参数的情况下,做增量备份:

db2 backup db sample online incremental use tsm

备份成功,返回一个时间戳。

(2)、同样可以用db2adutl 和db2 list history察看备份纪录。

(3)、还有一种delta的备份:

db2 backup db sample online

incremental delta use tsm

这两种备份的区别,类似Oracle Exports的Incremental和Cumulative方式,db2的incremental对应oracle的cumulative方式,而db2的delta方式则对应oracle的incremental方式。

(4)、备注:同样,对每个节点都做这个 *** 作。

4、 恢复数据库

(1)、手工drop数据库,模拟灾难恢复的情况,执行如下 *** 作:

db2 drop db sample

(2)、恢复备份历史纪录(每次backup,不论类型,都会备份历史纪录文件)。这里的时间戳应该是最新的:

db2 restore db sample history file use tsm

taken at 20030102223107 buffer 100

(3)、使用db2的恢复帮助工具:

db2ckrst -d sample -t 20030101224424 -r database

命令返回建议的必需的恢复 *** 作命令。

(4)、按照帮助工具的提示,先做版本恢复,恢复命令如下:

db2 restore db sample incremental use tsm taken at 20030101224424 buffer 100

同样先做主节点的恢复,再做其他节点的恢复 *** 作。

(5)、这时数据库处于rollforward-pending state的状态,需要做roll forward *** 作:

db2 rollforward db sample to 2003-01-12-132725000000 on all nodes and stop

前滚到同一个时间点。这个 *** 作要在主节点来做。

5、说明:

(1)、恢复 *** 作也有online和offline的,区别等同backup的 *** 作。

(2)、按照表空间的备份和恢复类似,加子句TABLESPACE ( tablespace-name 即可。表空间级别的备份/恢复 *** 作要求数据库处于归档日志和启用增量备份模式下。

(3)、恢复的例子中只做了版本恢复。若还有更新的全备份和增量备份的image,可以依次做恢复(请注意使用db2ckrst的建议恢复次序和次数)之后,最后做roll forward

一、 使用mysql相关命令进行简单的本地备份

1 mysqlldump命令

mysqldump 是采用SQL级别的备份机制,它将数据表导成 SQL 脚本文件,在不同的 MySQL 版本之间升级时相对比较合适,这也是最常用的备份方法。

使用 mysqldump进行备份非常简单,如果要备份数据库” db_backup ”,使用命令:

#mysqldump –u -p phpbb_db_backup > /usr/backups/mysql/db_backup2008-1-6sql

还可以使用gzip命令对备份文件进行压缩:

#mysqldump db_backup | gzip > /usr/backups/mysql/ db_backup2008-1-6sqlgz (备份后生成的sql不含建库语句!)

只备份一些频繁更新的数据库表:

## mysqldump sample_db articles comments links > /usr/backups/mysql/sample_dbart_comm_lin2008-1-6sql

上面的命令会备份articles, comments, 和links 三个表。

恢复数据使用命令:

#mysql –u -p db_backup </usr/backups/mysql/ db_backup2008-1-6sql

注意使用这个命令时必须保证数据库正在运行。

2 使用 SOURCE 语法

其实这不是标准的 SQL 语法,而是 mysql 客户端提供的功能,例如:

# SOURCE /tmp/db_namesql;

这里需要指定文件的绝对路径,并且必须是 mysqld 运行用户(例如 nobody)有权限读取的文件。

3 mysqlhotcopy备份

mysqlhotcopy 只能用于备份 MyISAM,并且只能运行在 linux 和Unix 和 NetWare 系统上。mysqlhotcopy 支持一次性拷贝多个数据库,同时还支持正则表达。以下是几个例子:

#mysqlhotcopy -h=localhost -u=goodcjh -p=goodcjh db_name /tmp

(把数据库目录 db_name 拷贝到 /tmp 下)

注意,想要使用 mysqlhotcopy,必须要有 SELECT、RELOAD(要执行 FLUSH TABLES) 权限,并且还必须要能够有读取 datadir/db_name 目录的权限。

还原数据库方法:

mysqlhotcopy 备份出来的是整个数据库目录,使用时可以直接拷贝到 mysqld 指定的 目录 (在这里是 /usr/local/mysql/data/)目录下即可,同时要注意权限的问题,另外首先应当删除数据库旧副本如下例:

# /bin/rm -rf /mysql-backup///old

关闭mysql 服务器、复制文件、查询启动mysql服务器的三个步骤:

# /etc/initd/mysqld stop

Stopping MySQL: [ OK ]

# cp -af /mysql-backup/// /var/lib/mysql /

# /etc/initd/mysqld start

Starting MySQL: [ OK ]

#chown -R nobody:nobody /usr/local/mysql/data/ (将 db_name 目录的属主改成 mysqld 运行用户)

二、使用网络备份

将MYSQL数据放在一台计算机上是不安全的,所以应当把数据备份到局域网中其他Linux计算机中。假设Mysql服务器IP地址是:19216813。局域网使用Linux的远程计算机IP地址是19216814;类似于windows的网络共享,UNIX(Linux)系统也有自己的网络共享,那就是NFS(网络文件系统),在linux客户端挂接(mount)NFS磁盘共享之前,必须先配置好NFS服务端。linux系统NFS服务端配置方法如下:

(1)修改 /etc/exports,增加共享目录

/export/home/sunky 19216814(rw)

/export/home/sunky1 (rw)

/export/home/sunky2 linux-client(rw)

打开secureCRT,连接到数据库所在的linux机器。若用户为root,请输入命令“su - oracle”并回车,若要密码,输入密码后并回车,就切换到了oracle用户下。(图为已切换到oracle用户下了)

如何在linux下重启oracle数据库

关掉oracle的监听进程:命令为“lsnrctl stop”并回车,这时外部没法连接到数据库了。如图有提示关闭成功信息。

如何在linux下重启oracle数据库

先杀掉所有session,小编用的是命令:“ps -ef|grep $ORACLE_SID|grep -v ora_|grep LOCAL=NO|awk '{print $2}'|xargs kill”也可以用其他办法。然后用sqlplus登录到数据库。命令依次为:“sqlplus /nolog”-“connect / as sysdba” ,最后用命令关闭oracle数据库"shutdown immediate" 。关闭命令的时候需要等待点时间,成功后会有如图的提示。

如何在linux下重启oracle数据库

用命令"exit"退出sqlplus。然后用命令“lsnrctl start”启动数据库的监听进程。如图

提示语句表明启动成功。

如何在linux下重启oracle数据库

和第三步一样,先用sqlplus登录到数据库。命令依次为:“sqlplus /nolog”-“connect / as sysdba”。然后输入命令“startup”并回车。等待几分钟会出现如图提示信息。最后用命令“exit”退出sqlplus。

如何在linux下重启oracle数据库

END

注意事项

注意命令不要输入错误。

在关闭数据库的时候要耐心等待一下。

一定要先杀掉所有session哦。

导出用exp导入用imp,要导入的数据库先装数据库,建一个同名的空库

命令例子:

exp system/oracle file=/opt/db20111013sql log=/opt/explog full=y

imp导入写法相同不用加full=y

以上就是关于Linux下移动了数据库 pgsql目录到另一个文件下,恢复后,启动服务提示无全部的内容,包括:Linux下移动了数据库 pgsql目录到另一个文件下,恢复后,启动服务提示无、Linux查看数据库备份脚步的配置信息命令、从Linux备份DB2数据库到AIX上怎么恢复等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9498457.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存