1. SQL数据库怎么上传到FTP
通过ftp上传的话,需要用到put命令。点击左下角的开始菜单,之后在搜索中输入”cmd “,回车,之后再命令行登录ftp远程服务即可。接下来可以进行登录和文件传输等操作:
第一步:在命令行输入“ftp”,之后输入“open ip”;
第二步:输入远程的“用户名”,之后输入“密码”;
第三步:通过“cd remote -dir”进入远程主机目录;
第四步:通过“cd 路径”切换到远程文件位置(主要是为了查看位置);
第五步:通过“lcd ”切换回本地路径;
第六步:通过“put [local-file] [remote-dir] ”上传SQL数据库,”remote -dir“是远程文件路径, “local -file”是本地文件路径。
2. 求助,如何把MYSQL数据库上传到FTP空间里去
换空间,数据的备份与恢复具体步骤操作!
一 备份数据
1,利用PW后台的数据备份功能进行备份.注意的是在备份数据的时候,为了数据的完整性,建议最好先关闭论坛,后台更新所有缓存和索引.
2,利用phpmyadmin,进行备份,具体如何备份,这里就不介绍.不清楚的可以查阅相关文档,很简单的.这里备份的文件是一个独立sql文件.
以上方法一般适用与中小型论坛的备份,数据量比较小的时候还是很实用的,一般多为虚拟主机用户使用.大型论坛的备份一般是 3,4两种操作..主要是比较简单操作,一些我个人认为比较复杂且不是很实用的方法就不介绍了不如通过Mysqlhot,使用binlog机制,增加mysql的事物日志记录等,这里就不介绍了.以下下操作一般有服务器权限的朋友才可以的.
3,直接复制或者打包数据库文件,复制文件夹,大家应该都明白,我们来讲打包,linux下用tar命令实现简单有效,速度快.Win 下,直接用winrar或者winzip 搞定.注意需要暂停mysql服务.
4,Mysqlmp,是mysql自带的脚本,假如数据库名为abc,用户名为:abcuser,密码为123,,那应该使用
命令:
mysqlmp -uabcuser -p123 adc > pwabc_bak.sql
,pwabc_bak.sql 你可以任意的命名.
二 数据还原
1,针对第一种备份方法,也是最普遍使用的.在恢复论坛数据的时候,要关闭php.ini文件中的safe mode,恢复完数据后,再打开SAFE MODE就可以了。(自己服务器得才需要此设置,普通虚拟空间用户不用此设置)
>>用FTP软件下载老论坛所有文件
>>将所有文件上传至新空间
>>打开网页 你的论坛地址/admin.php 用你的论坛创始人帐号登陆
>>数据恢复(随便点一个文件,程序会自动将剩余文件导入的)
以上方法可保留所有数据及插件和模板。
对于不需要模板的或者不需要原来的插件的
>>老论坛备份数据,用FTP拉到本地。(具体在data目录下)
>>上传程序包里的文件到新空间,全新安装
>>用FTP软件将备份的数据上传到新空间的data目录下
>>用论坛创始人帐号进入后台,数据恢复
如果后台数据库忘记了,可以直接修改sql_config.php里的数据库帐号和创始人帐号密码!这里输入的创始人密码不能直接是明文.需要是MD5加密过后的.
这里就给大家一个简单的 MD5密文 [] 明文 [123456]之后就可以通过/admin.php 刚才修改的帐户密码登陆论坛了..
2,对于phpmysql备份的数据,在2M以下可以直接导入数据库中(至于怎么导,看相关文档,很简单.)数据量很大的情况只能到服务器上,服务器上 mysql 命令导入(具体导入将在"4"中介绍)虚拟主机用户,那么就得联系你的空间商,让他们协助完成数据的恢复.
3,对于打包数据库文件的,可以直接解压 把数据库文件 放到你数据库名的目录下. 在linux下注意数据库文件的权限.一般都是mysql:mysql. Win 下关系不是很大,除非你做了特殊的权限设置.
4,对于mysqlmp 导出数据, 按照备份数据中的举例用户来演示,
则命令为:
mysql -uabcuser -p123 abc < abc_bak.sql
注意:
无任何错误一般来说就是正常完成。通常在使用 phpmyadmin 导入的sql脚本中有create database语句,会导致导入数据出错,因为database 已经存在,把这段语句删除之,再次检查客户的建表语句前是否有drop表的语句,如果没有,而原数据库存在同名表格,也会出错,这时需要清空原数据库.
3. 如何备份SQL数据到指定文件夹并且下载下来
你可以使用ftp至你的网站,然后再将备份文件down下来
如果是oracle
,备份归档日志和数据文件
如果是sql
server2000
,备份日志文件与数据文件
收工!
4. 如何将SQL数据库备份到网络共享
定期备份SQL数据库是必须的。我们已经覆盖的方式就可以轻松备份您的所有SQL Server数据库到本地硬盘中,但这并不能防止驱动器和/或系统故障。作为针对此类灾难的额外保护层,您可以在网络共享上复制或直接创建备份。
在本地备份,然后复制到网络共享
完成此任务的首选和最直接的方法是简单地创建数据库的本地备份,然后将相应的备份文件复制到网络共享。您可以通过创建如下所示的批处理脚本来完成此操作:
SET LocalFolder = C:Program Files Microsoft SQL ServerMSSQL.1MSSQLBackup
SqlCmd -E -Q“备份数据库MyDB到磁盘=%LocalFolder%MyDB.bak”
XCopy“%LocalFolder%MyDB.bak”“ 192.168.16.55BackupDatabases”/ Z / V
DEL“%LocalFolder%MyDB.bak”
此脚本执行以下操作(逐行):
将变量设置为本地SQL备份目录。
创建MyDB的SQL备份(使用Windows身份验证)到本地SQL备份目录。
将本地备份文件复制到网络共享。
删除本地备份文件。
同样,这是首选方法,因为它的工作原理和备份失败的可能性是最小的,因为备份是在本地磁盘上创建。但是,如果没有足够的磁盘空间来存储备份文件的本地副本,则此操作将失败。在这种情况下,您需要添加额外的磁盘空间或直接备份到网络共享。
直接备份到网络共享
通常,当您尝试使用以下命令直接创建备份到网络共享时:
SqlCmd -E -Q“备份数据库MyDB到磁盘= 192.168.16.55BackupDatabasesMyDB.bak”
你很可能会得到一个错误的行:
消息3201,级别16,状态1,服务器JF,行1
无法打开备份设备 192.168.16.55BackupDatabasesMyDB.bak。操作系统错误5(访问被拒绝。)。
消息3013,级别16,状态1,服务器JF,第1行
BACKUP DATABASE异常终止。
尽管使用Windows身份验证(-E开关)和Windows帐户作为通过Windows资源管理器访问和复制文件到共享的能力运行SQL备份命令,仍会出现此错误。
此操作失败的原因是SQL命令在SQL Server服务运行的帐户的边界内执行。当您在计算机上查看服务列表时,很可能您将看到运行为(登录为)列的SQL Server服务本地系统或网络服务,它们是没有网络访问权限的系统帐户。
在我们的系统上,网络共享命令的备份失败,因为我们有SQL Server服务作为本地系统运行,再也无法获得任何网络资源。
为了允许SQL直接备份到网络共享,我们必须将SQL Server服务作为可访问网络资源的本地帐户运行。
编辑SQL Server服务的属性,并在“登录”选项卡上将服务配置为作为具有网络访问权限的备用帐户运行。
单击“确定”后,您将收到一条提示,指示在重新启动服务之后,设置才会生效。
重新启动服务。
服务列表现在应显示SQL Server服务正在作为您配置的帐户运行。
现在当您运行命令直接备份到网络共享:
SqlCmd -E -Q“备份数据库MyDB到磁盘= 192.168.16.55BackupDatabasesMyDB.bak”
您应该会看到一个成功消息:
处理数据库MyDB的152页,文件1上的文件MyDB。
为数据库MyDB处理2页,文件1上的文件MyDB_log。
BACKUP DATABASE在0.503秒(2.493 MB /秒)中成功处理了154页。
使用备份文件现在在网络共享目录:
网络共享注意事项请务必注意,备份命令希望能够直接连接到网络共享,而不会提示您输入凭据。您配置要运行的SQL Server服务的帐户必须与网络共享具有可信连接,其中相应的凭据允许访问,否则可能会发生以下错误:
消息3201,级别16,状态1,服务器JF,行1
无法打开备份设备 192.168.16.55BackupDatabasesMyDB.bak。操作系统错误1326(登录失败:未知用户名或密码错误。)。
消息3013,级别16,状态1,服务器JF,第1行
BACKUP DATABASE异常终止。
此错误表示网络共享不接受帐户的用户名和密码,并且命令失败。
另一个要记住的问题是备份直接执行到网络资源,因此网络连接中的任何打嗝可能会导致您的备份失败。因此,您只应该备份到稳定的网络位置(即可能不是VPN)。
安全隐患
如前所述,使用在本地备份然后复制到网络共享的方法是首选,因为它允许您将SQL服务作为仅具有本地系统访问权限的帐户运行。
通过将服务作为备用帐户运行,您打开了潜在的安全问题的大门。例如,恶意SQL脚本可以在备用帐户下执行并攻击网络资源。此外,对相应帐户(密码更改/到期或帐户的删除/禁用)的任何更改将导致SQL Server服务无法启动。
5. SQL server 2005 备份网络路径方式
这是SQL Server的启动账号没有访问网络路径的权限,很有可能SQL Server的启动账号是本地系统或者网络服务。建议在SQL Server服务器和备份机上创建相同名称和密码的Windows用户,并且都给管理员权限,之后设置SQL Server的启动账号为这个新创建的账号。虽然你在SQL Server服务器上可以访问网络路径,但是那是你登录的Windows账号的权限访问的,并不表示SQL Server启动账号也有权限访问。
6. sqlserver怎么备份到网络
最近在看联机从书,在看到sp_admpdevice时无意间看到如下内容:
"
[@physicalname =] 'physical_name'
备份设备的物理名称。物理名称必须遵照操作系统文件名称的规则或者网络设备的通用命名规则,并且必须包括完整的路径。physical_name 的数据类型为 nvarchar(260),没有默认值,并且不能为 NULL。
当创建远程网络位置上的备份设备时,请确保在其下启动 SQL Server 的名称对远程的计算机有适当的写入能力。
B. 添加网络磁盘备份设备
下面的示例显示一个远程磁盘备份设备。在其下启动 SQL Server 的名称必须对该远程文件拥有权限。
USE master
EXEC sp_admpdevice 'disk', 'networkdevice', '\\servername\sharename\path\filename.ext'
以前曾看到过有人问,怎么样才能将数据备份到网络上,一直没有答案,然后我就试验了一把.
在服务器上建了一个目录,然后确保共享并有权限,如果需要建在共享目录下的目录下,那还得保证用户有权限
当然,SQLSERVER系统启动早于登录,一般用户会在登录中使用本地系统账户,我想在登录到系统之前一直是
administrator用户模拟,因此,我将登录的账户改为了网络用户,因为我公司有域,因此我将域用户设置为本机
的系统管理员,以确保该服务能启动.
接下来更简单了:
sp_admpdevice 'DISK','NetWork','\\server\d$\databak\xuzh.bak'
go
backup database xuzh to network
得到的结果如下:
已处理 96 页,这些页属于数据库 'xuzh' 的文件 'xuzhP01'(位于文件 2 上)。
已处理 16 页,这些页属于数据库 'xuzh' 的文件 'xuzhP02'(位于文件 2 上)。
已处理 16 页,这些页属于数据库 'xuzh' 的文件 'xuzhS01'(位于文件 2 上)。
已处理 8 页,这些页属于数据库 'xuzh' 的文件 'xuzhS02'(位于文件 2 上)。
已处理 1 页,这些页属于数据库 'xuzh' 的文件 'xuzh_Log'(位于文件 2 上)。
BACKUP DATABASE 操作成功地处理了 137 页,花费了 0.516 秒(2.161 MB/秒)。
成功完成网络备份
另外,----------------------
实例说明:
环境:win2k+sqlserver 2K+查询分析器
SQLSERVER服务实例名称:mainserver
需要备份的数据库名称: msdb
本地机器名称(Client端):david
本地用户:zf 密码:123
本地域名:domain
本地提供备份需求的文件夹:e:\test
第一步: 建立共享文件夹
在程序代码中调用(或者CMD窗口) net share test=e:\test
或者用NetShareAdd这个API
简要说明:
net share : 是WINDOWS内部的网络命令。
作用:建立本地的共享资源,显示当前计算机的共享资源信息。
语法:参见 net share /?
第二步: 建立共享信用关系
master..xp_cmdshell 'net use \\david\test 123 /user:domain\zf'
简要说明:
1:xp_cmdshell :是SQLSERVER的扩展存储过程。
作用,以操作系统命令行解释器的方式执行给定的命令字符串,
并以文本行方式返回任何输出。
语法:参见SQLSERVER联机帮助
2:net use : 是WINDOWS内部的网络命令。
作用,将计算机与共享资源连接或断开,或者显示关于计算机
连接的信息。该命令还控制持久网络连接。
语法:参见 net use /?
第三步:备份数据库
backup database msdb to disk='\\david\test\msdb.bak'
这个不需要说明吧,语法参见SQLSERVER联机帮助
第四步: 删除共享文件夹
在程序代码中调用(或者CMD窗口) net share test /delete
或者用NetShareDel这个API
结果:
已处理 1376 页,这些页属于数据库 'msdb' 的文件 'MSDBData'(位于文件 1 上)。
已处理 1 页,这些页属于数据库 'msdb' 的文件 'MSDBLog'(位于文件 1 上)。
BACKUP DATABASE 操作成功地处理了 1377 页,花费了 3.653 秒(3.086 MB/秒)。
这样mainserver服务器上的msdb就备份到了david机器的E:\test\msdb.bak文件了,使用起来很简单吧?恢复数据库操作也是一样,只要将第三个步骤的语句改为'restore database msdb from disk='\\david\test\msdb.bak'就可以啦。。你看完了也可以试试呀?!(最简单的测试工具查询分析器+CMD窗口)
备注:xp_cmdshell 这个扩展存储过程只能SA级别的用户调用,而且是SQLSERVER的安全隐患之一,许多DBA都喜欢将其删除或者禁用,所以开发人员使用时要倍加小心哦。
文章中的例子只是简要的说明了应如何利用扩展存储过程实现远程备份与恢复,没有涉及安全以及其他方面的考虑,希望读者在代码中自行完善。
7. sql server 2008 如何实现数据库定时备份到局域网内另外一台服务器上
这个偶一般是先在sql 2008中建一个计划,先将数据库备份到本机某个目录下,然后用ftp设定好这个目录。然后在另一台机器上安装一个备份软件,比如second之类的,定时从这个ftp同步过去就行了。
8. 如何自动备份数据库后将备份自动上传到FTP服务器
这篇文章很有分享价值,因为我们在实际的生产环境中需要将数据库进行自动备份,然后上传到指定的位置,当然也可以像以下文章中所讲的一样,上传到你指定的FTP服务器中,从而实现Mysql数据库自动备份并上传到远程FTP服务器的部署,在Linux技术交流群中,也有朋友会遇到这方面的问题,可以将此文分享给群友共益。
注意:任何的操作都会具有风险性,请在本机实际测试通过之后再部署到服务器环境,这样即熟练的掌握了操作的技巧,也能在测试过程中发现问题,寻找解决方法。
说明:我这里要把MySql数据库存放目录/var/lib/mysql下面的data数据库备份到/home/mysql_data里面
并且保存为mysqldata_bak_2012_12_19.tar.gz的压缩文件格式(2012_12_19是指备份执行时当天的日期)
然后只保留最近7天的备份
再把备份文件通过ftp服务器上传到指定空间,只保留最近7天的数据
实现步骤:
1、创建保存备份文件的路径:/home/mysql_data
cd /home
mkdir mysql_data
2、创建备份脚本文件:/home/mysql_data/mysql_databak.sh
cd /home
cd mysql_data
touch mysql_databak.sh
vim mysql_databak.sh
输入以下内容:
#######################################################################################################
#!/bin/sh
DUMP=/usr/bin/mysqlmp #mysqlmp备份文件执行路径
OUT_DIR=/home/mysql_data #备份存放路径
LINUX_USER=root #系统用户名
DB_NAME=data #要备份的数据库名字
DB_USER=root #数据库账号 注意:非root用户要用备份参数 --skip-lock-tables,否则可能会报错
DB_PASS=123456 #数据库密码
DAYS=7 #DAYS=7代表删除7天前的备份,即只保留最近7天的备份
cd $OUT_DIR #进入备份存放目录
DATE=`date +%Y_%m_%d` #获取当前系统时间
OUT_SQL="$DATE.sql" #备份数据库的文件名
TAR_SQL="mysqldata_bak_$DATE.tar.gz" #最终保存的数据库备份文件名
$DUMP -u$DB_USER -p$DB_PASS $DB_NAME --default-character-set=utf8 --opt -Q -R --skip-lock-tables> $OUT_SQL #备份
tar -czf $TAR_SQL ./$OUT_SQL #压缩为.tar.gz格式
rm $OUT_SQL #删除.sql格式的备份文件
chown $LINUX_USER:$LINUX_USER $OUT_DIR/$TAR_SQL #更改备份数据库文件的所有者
find $OUT_DIR -name "mysqldata_bak_*" -type f -mtime +$DAYS -exec rm {} \; #删除7天前的备份文件
deldate=` date -d -7day +%Y_%m_%d ` #获取7天前的时间
ftp -n<<!
open 192.168.1.1 21 #打开ftp服务器。21为ftp端口
user admin 123456 #用户名、密码
binary #设置二进制传输
cd mysqlbak #进入ftp目录(这个目录必须为ftp空间真实存在的目录)
lcd /home/mysql_data #列出本地目录
prompt
put mysqldata_bak_$DATE.tar.gz mysqldata_bak_$DATE.tar.gz #上传目录中的文件
delete mysqldata_bak_$deldate.tar.gz mysqldata_bak_$deldate.tar.gz #删除ftp空间7天前的备份
close
bye !
#######################################################################################################
3、修改文件属性,使其可执行
chmod +x /home/mysql_data/mysql_databak.sh
4、修改/etc/crontab
vi /etc/crontab
在下面添加
30 1 * * * root /home/mysql_data/mysql_databak.sh
表示每天凌晨1:30分执行备份
5、重新启动crond使设置生效
/etc/rc.d/init.d/crond restart
chkconfig crond on #设为开机启动
service crond start #启动
每天你在/home/mysql_data目录下面可以看到类似mysqldata_bak_2012_12_19.tar.gz这样的压缩文件
如果需要恢复文件的时候,只需要把这个文件解压即可
解压缩tar -zxvf mysqldata_bak_2012_12_19.tar.gz
至此,我们完成了Linux中Mysql数据库自动备份并上传到远程FTP服务器的部署。
9. SQL备份到网络路径
先在资源管理器地址栏中输入\\172.168.1.X\backup\g2sXql\XXXX
如果有用户名,密码,则需输入。
然后再执行备份。
10. 怎么把数据库SQL文件和上传到FTP的网站连接起来
登录PHPmyadmin,将sql文件导入,然后登陆ftp工具,将程序连接文件下载下来,修改其中的相应连接参数即可。