上传到linux下的mysql数据库中【葡京网站spj3355】

葡京网站spj3355 1

1.背景

windows server 二零零六 下 每一日会有
*.sql数据文件

内需上传到linux
中的mysql数据库中

而运转职员是在 windows server 下使用
xshell 连接 linux 下开展导入导出来进行操作

顾客供给:1.点击桌面上的次序达成上传到linux下的mysql数据库中。

 

2.要消除的主题材料

1.由此什么样来让数据文件 上盛传 linux

2.怎么才足以点击一下就高达
window下的数据文件 上传到linux下

3.数据文件到达后 如何做才足以
在window下 让多少同步到数据库中

1.解决第三个难题

1.由此什么样来让数据文件 上传播 linux

可用方法 FTP samba NFS 文件分享服务

因为难点2 要在window下实行 优先想到
使用ftp 因为 ftp在windows 下能够透过cmd 直接履行

葡京网站spj3355 1

2.化解第三个难点

怎么才可以点击一下就达到window下的数据文件 上传到linux下

主题素材生龙活虎、怎么着能力够把windows下的数据文件上传到ftp上吗???

 

葡京网站spj3355 2

标题二、作者怎么本事够点击一下就能够成功如此的操作呢

自己想到了windows下的批管理文件.bat

第风姿洒脱 ftp
顾客端是windows下自带的

就此能够一直调用
不过自身又须求在ftp下有这么多的操作怎么才方可啊

ftp -s脚本 可以把你在ftp的指令
直接写入文件中 而用-s 直接在ftp下运转

 

唯独又有了八个新的主题材料

老是上传三个sql文件都要 yes 一下
???

这么些难题找麻烦了自小编相当久

直至作者意识了这些命令

互相形式:关闭

葡京网站spj3355 3

 

3.息灭第多个难题

数据文件达到linux 怎么着才足以
在windows操作同步到数据库中呢???

率先
:在linux下假设同步到库中吗

mysql -uroot -p 库名 < 路径 

就那一个指令
,笔者一心能够在linux写的shell脚本中去运转

与上述同类就化解了备份 不过 你怎么
在windows端下 实行操作呢

 

 

 

本身先是想到了putty.exe

比如 能够在cmd 直接调用putty
我就直接能够写批管理文件 来达成本人要做的事体

 葡京网站spj3355 4

putty登陆linux供给怎样

ip地址 顾客名 密码 端口
笔者怎么才方可把她们合伙 运转呢

putty.exe -ssh -pw 123789456
root@192.168.91.59

 

而是大家的终极指标是哪些???

 

在windows 下运维 shell 脚本
同步数据库

putty.exe -m 脚本

putty.exe -ssh -pw 123789456 -m
脚本名字 root@192.168.91.59

那样就能够 在windows 下运转 shell
脚本 同步 linux 数据库

 

 

下边放成品的代码 代码只是为着作用完全能够再减弱超多 

瞩目:将这些批管理 与putty.exe
放到有sql的公文夹下运维 

 

@echo off
color 0a
cd /d %~dp0
if exist *.sql (goto next) else (goto baddir)
:next
@Echo Off
color 3E
set /p var=请输入你要配置的IP地址:
set /p pass=请输入root密码:
cls
title Armstrong喷气式Armstrong上传同步工具(2018.4.21卡塔尔国
echo.【功用表明】
echo.通过FTP把当前目录下的.sql文件同步到对象mysql中
echo.大器晚成键搭建际遇、生机勃勃键上传、意气风发键联机扩张工作成效
echo.
echo.【特别提示】
echo.1. 如若第二回运转,获取秘钥请手动点击鲜明
echo.2. 工具使用各种(1卡塔 尔(阿拉伯语:قطر‎(2卡塔 尔(阿拉伯语:قطر‎单独选用(2卡塔 尔(阿拉伯语:قطر‎会失效
echo.3. 须求保险yum源能够健康安装FTP服务
echo 4. window7下全面运维,win10下或许会产出putty运行慢
echo.5. sql文件暗许贮存在/LT/date下
echo.6. 同步到位默许放进/LT/lajixiang下 默许保存5天
echo.7. 如sql过大,上传时间长归于常规意况,请勿关闭
echo.8. 最后解释权为作者全部
echo. 假使当前服务器安装了FTP服务请小心运用 谨防数据遗失!!
echo.
echo.

:on
cd /d %~dp0
choice /c 1234 /m “请输入编号:(1)创建;(2)同步;(3)卸载;(4卡塔尔关闭;
if %errorlevel%==4 goto guanbi
if %errorlevel%==3 goto xiezai
if %errorlevel%==2 goto tongbu
if %errorlevel%==1 goto dajian

:dajian
@echo off
echo 搭建情况并上传……
echo ^#!/bin/bash^ >linux.sh
echo ^yum -y install vsftpd^ >>linux.sh
echo ^useradd -p 123789456 litong^ >>linux.sh
echo ^echo ‘litong:123789456’^|chpasswd^ >>linux.sh
echo ^mkdir /LT/data -p^ >>linux.sh
echo ^mkdir /LT/lajixiang -p^ >>linux.sh
echo ^chmod 777 /LT/data^ >>linux.sh
echo ^chmod 777 /LT/lajixiang^ >>linux.sh
echo ^echo anonymous_enable=YES ^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo local_enable=YES ^>^> /etc/vsftpd/vsftpd.conf ^
>>linux.sh
echo ^echo write_enable=YES ^>^> /etc/vsftpd/vsftpd.conf ^
>>linux.sh
echo ^echo local_umask=022 ^>^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo dirmessage_enable=YES ^>^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo xferlog_enable=YES ^>^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo connect_from_port_20=YES ^>^>
/etc/vsftpd/vsftpd.conf^ >>linux.sh
echo ^echo xferlog_std_format=YES ^>^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo listen=YES ^>^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo pam_service_name=vsftpd ^>^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo userlist_enable=YES ^>^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo tcp_wrappers=YES ^>^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo local_root=/LT/data ^>^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo userlist_deny=NO ^>^> /etc/vsftpd/vsftpd.conf^
>>linux.sh
echo ^echo litong ^> /etc/vsftpd/user_list^ >>linux.sh
echo ^service iptables stop^ >>linux.sh
echo ^setenforce 0^ >>linux.sh
echo ^service vsftpd restart^ >>linux.sh
putty.exe -ssh -pw %pass% -m linux.sh root@%var%
del linux.sh
Echo open %var% >up
Echo litong>>up
Echo 123789456>>up
Echo prompt >>up
Echo mput *.sql>>up
Echo bye>>up
FTP -s:up
del up
echo 上传成功
goto on
:tongbu
pause
set /p zhanghu=数据库账户:
set /p mima=数据库密码:
set /p kuming=就要同步的库名:
del
echo 同步到数据库中……
echo #/bin/bash >peizhi.sh
echo mysql -u%zhanghu% -p%mima% %kuming% ^</LT/data/*.sql
>>peizhi.sh
echo mv /LT/data/*.sql /LT/lajixiang/ >>peizhi.sh
echo find /lt/lajixiang/*.sql -mtime +5 ^|xargs rm -rf
>>peizhi.sh
putty.exe -ssh -pw %pass% -m peizhi.sh root@%var%
del peizhi.sh
echo 同步成功
goto on
:xiezai
echo 卸载境况中……
echo rm -r /LT >xiezaihuanjing.sh
echo userdel -r litong >>xiezaihuanjing.sh
echo yum -y remove vsftpd >>xiezaihuanjing.sh
putty.exe -ssh -pw %pass% -m xiezaihuanjing.sh root@%var%
del xiezaihuanjing.sh
echo 卸载成功
goto on
:baddir
echo.
echo
警示:请将本工具放在要上传的sql文件夹下再运营,不然将现出不可预料的结局!
echo.
echo
(例:若sql文件在目录为【D:date】,则将该工具放在【D:date】目录下后再试行。卡塔 尔(英语:State of Qatar)
echo.
pause
echo 退出脚本
exit
:guanbi
exit

如上脚本中有大多能够优化的地点 只是团结不愿在去弄了 有乐趣的能够优化一下 举个例子 shell中的查找替换能够用sed来做

转发请标明