CentOS7下mysql数据库的迁移,第1张

想知道你的mysql装在哪里吗?CentOS7一般是装在/var/lib/mysql中的

在完成迁移之前,先用下面的指令来停止mysqld服务

service mysqld stop,或者直接点sudo systemctl stop mysqld

然后用df-h指令看服务器上剩余空间是多少,假设我们新挂了一块500G的硬盘到/data上

那么请把mysql整个文件夹拷贝到/data中,像下面这样:

sudo cp -rf /var/lib/mysql /data/mysql,拷完以后原来的mysql文件夹就可以删除了

然后再修改/etc/mycnf,这个也是需要su的:

sudo vi /etc/mycnf

里面有一个字段叫[mysqld],将datadir和socket修改成这样:

datadir=/data/mysql

socket=/data/mysql/mysqlsock

接下来,有的人说要修改/etc/initd/mysqld,但我的服务器不需要,直接通过

service mysqld start就可以启动SQL服务了,远程也可以连接上,但是:

当你使用终端mysql -u root -p的时候,就会报下面这个错:

Can't connect to local MySQL server through socket '/var/lib/mysql/mysqlsock'

这个时候,你有两种解决办法,一种是造一个软连接

ln -s /data/mysql/mysqlsock /var/lib/mysql/mysqlsock,原因是你已经删掉之前的mysql目录了

另外一种办法,是在/etc/mycnf下面新建一个新字段:

[mysql]

socket=/data/mysql/mysqlsock

第一种方法不需要重启mysql server,第二种方法需要重启mysql server,

然后,你就可以成功地从终端里进入mysql了

敲黑板,不要在[mysql]下面自做主张地写上datadir=/data/mysql,这样会导致本地命令行登录时报错:Unknown Variable: datadir=/data/mysql

可以分离数据数据和事务日志文件,然后将它们重新附加到同一或其他 SQL Server 实例。如果要将数据库更改到同一计算机的不同 SQL Server 实例或要移动数据库,分离和附加数据库会很有用。

分离数据库在 SQL Server Management Studio 对象资源管理器中,连接到 SQL Server 数据库引擎 的实例,然后再展开该实例。 展开“数据库”,并选择要分离的用户数据库的名称。 右键单击数据库名称,指向“任务”,再单击“分离”。将出现“分离数据库”对话框。要分离的数据库列出要分离的数据库。 数据库名称 显示要分离的数据库的名称。删除连接断开与指定数据库的连接。 注意不能分离连接为活动状态的数据库。

附加数据库,右键单击“数据库”,然后单击“附加”。其他步骤如分离数据库 在“附加数据库”对话框中,若要指定要附加的数据库,请单击“添加”,然后在“定位数据库文件”对话框中选择数据库所在的磁盘驱动器并展开目录树,以查找并选择数据库的 mdf 文件。例如C:\Program Fille\Microsoft SQL ServerMSSQL11MSSQLSERVER\MSSQL\DATA\AdventureWorks2012_Datamdf

首先,打开服务器上已经安装好的SQL Server 2005 服务器,并且用本地Windows身份登录。

2

打开SQL Server服务器以后,点击数据库--选择附加

3

打开附加数据库界面后,点击右小角的添加

4

打开电脑上,之前备份好的完成数据库文件,然后点击确认。

5

数据库文件和其数据库日志文件,就一并加载过来了,点击确认就可以了。

6

展开数据库,就可以了看到我

们刚刚附加过来的完整数据库了,现在就可以

使用

这个数据库。

1、打开SqlServer数据库,选中要备份的数据库,右键选择任务,点击备份。

2、输入数据集名称,选择备份路径,点击确定就完成了数据库的备份。

3、右键选择任务,点击还原,选择数据库。

4、选择之前备份的数据库,点击确定。

5、至此SqlServer备份还原的操作就已完成。

要看什么数据,比如文件存储服务器,可以买2块万兆光纤网卡,直接复制,或者用软件复制,速度很快就搞定

如果带数据库,不建议直接复制,容易出问题,

数据库通过使用数据库的软件备份,比如用友,金蝶的数据库,然后复制备份数据到新服务器,原则上,以数据,从小到大开始

如果数据库实在太大,可以给使用该数据库软件的公司联系,看能不能做数据库和软件分离,单独的一台服务器只做数据库,只存放数据库数据,不负载其他软件,或者做类似分布式存储,多台服务器存储数据库数据,不集中在某一台服务器

分类: 电脑/网络 >> 程序设计 >> 其他编程语言

问题描述:

我的两个SQL SERVER数据库S1,S2存在相同数据:2004年1月~2006年10月之间的数据,06年10月以后的数据不同,S1保存了06年11月的数据,S2保存了06年12月的数据,现在需要将S1中11月的数据转移到S2,怎么做啊?(注:S1中11月的数据与S2中12月的数据可能有ID冲突)

解析:

1 在S2数据库中新建一个表SS,将S1 2006 11 的数据导到SS表,

2 然后将SS的主键列删掉(右键菜单,设计表,将主键ID删掉)。

3 把SS数据导入S2

难点就在于ID冲突,新建一个临时表SS存放导入的数据,然后把ID删掉再导入就OK了。

1、首先打开Navicat软件,右键点击左边空白的地方,点击New Connection下的MySQL,先创建一个服务器的连接。

2、确保服务器有开了对应的端口,能远程连接,在弹出的创建新连接的窗口里,输入服务器的IP,数据库账号,密码等信息。

3、创建好连接后,打开本地的数据库,右键点击需要转移数据的数据库,点击“Data Transfer”数据传输选项。

4、接着在点击后弹出窗口,最上方选择本地数据库名称和连接的数据库,下方选择本地需要转移的数据库表。

5、然后在右边的目标里,选择服务器的数据库连接,并选择服务器上的接受数据的数据库。

6、选择完成后按回车键确定转移,当转移完成的时候下方会提示转移成功。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » CentOS7下mysql数据库的迁移

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情