shell批量远程连接mysql的方法
一、配置mysql服务器ip列表如下,可自定义:
S1 1.1.1.1 3306 user passwd11 dbname_s1
S2 2.2.2.2 3306 user passwd22 dbname_s2
S3 3.3.3.3 3306 user passwd33 dbname_s3
二、#linux批量连接多服务器的shell脚本如下:
方法(1):数组方法
#!/bin/bash
if [[ "$#" -lt "2" ]]
then
echo "error"
echo "for example:$0 dbip.ini 20141001/select.sql"
exit 1
fi
name=(`cat /root/scripts/$1 | awk '{print$1}'`)
ip=(`cat /root/scripts/$1 | awk '{print$2}'`)
port=(`cat /root/scripts/$1 | awk '{print$3}'`)
user=(`cat /root/scripts/$1 | awk '{print$4}'`)
pass=(`cat /root/scripts/$1 | awk '{print$5}'`)
db_name=(`cat /root/scripts/$1 | awk '{print$6}'`)
time=`date -d '-1 day' +%Y%m%d`
touch /home/data/$time.txt
len=${#ip[*]}
num=0
while [ $num -lt $len ]
do
echo "=========== ${name[$num]} ============="
echo "=========== ${name[$num]} =============" >> /home/data/$time.txt
mysql -u${user[$num]} -p${pass[$num]} -h${ip[$num]} -P${port[$num]} ${db_name[$num]} < $2
let num++
done
方法(2),read读取
#!/bin/bash
if [[ "$#" -lt "2" ]]
then
echo "error"
echo "for example:$0 dbip.ini 20141001/select.sql"
exit 1
fi
cat $1 | while read line
do
name=(`echo $line | awk '{print$1}'`)
ip=(`echo $line | awk '{print$2}'`)
port=(`echo $line | awk '{print$3}'`)
user=(`echo $line | awk '{print$4}'`)
pass=(`echo $line | awk '{print$5}'`)
db_name=(`echo $line | awk '{print$6}'`)
echo "====================$name==============="
mysql -u$user -p$pass -h$ip -P$port $db_name < $2
done
三、脚本运行方式,sh jiaoben.sh 参数1 参数2
参数1=dbip.ini(mysql服务器的配置列表)
参数2=需要运行的sql语句的文本,
师例:比如我的脚本名字为,gomysql.sh 需要运行的sql放在select.sql的记事本里面,运行方法如下:
sh gomysql_gamedb.sh dbip.ini select.sql
shell批量远程连接mysql的方法的更多相关文章
- navicat远程连接mysql的方法
navicat远程连接mysql的方法1 先在打开phpmyadmin 添加用户 用户名和密码自己设置 设置如下 2 关闭防火墙service iptables status可以查看到iptables ...
- 远程连接mysql 授权方法详解
今在服务器上 有mysql 数据库,远程访问,不想公布root账户,所以,创建了demo账户,允许demo账户在任何地方都能访问mysql数据库中shandong库. 方案一: 在安装mysql的机器 ...
- mysql无法远程连接的解决方法
在阿里云服务器上安装好MySQL后,首先想到的就是安装一款工具来管理数据库,一开始选择了phpMyAdmin,这个工具安装很简单,只要解压到能访问的目录下就行了.在浏览器中访问phpMyAdm ...
- 远程连接MySQL,防火墙阻止访问,解决方法
远程连接MySQL,防火墙阻止访问,解决方法 xp/2003添加防火墙例外端口 打开防火墙,选择例外选项卡,添加端口 名称:mysqlport 端口号:3306 选中TCP win7添加防火墙例外 ...
- 远程连接mysql速度慢的解决方法:skip-name-resolve取消DNS的反向解析
PHP远程连接MYSQL速度慢,有时远程连接到MYSQL用时4-20秒不等,本地连接MYSQL正常,出现这种问题的主要原因是,默认安装的 MYSQL开启了DNS的反向解析,在MY.INI(WINDOW ...
- MySQL远程连接丢失问题解决方法Lost connection to MySQL server at ‘reading initial communication packet’, system error: 0
最近远程连接mysql总是提示 Lost connection 很明显这是连接初始化阶段就丢失了连接的错误 其实问题很简单,都是MySQL的配置文件默认没有为远程连接配置好,只需要更改下MySQL的配 ...
- 解决远程连接mysql很慢的方法(网络正常)
最近用mysql命令行或者JDBC远程连接mysql速度很慢,而且远大于ping时间.上网搜了一下,解决方案如下: 在/etc/mysql/my.cnf文件的[mysqld]部分加入:skip-nam ...
- Navicat for mysql 远程连接 mySql数据库10061、1045错误
原文地址:http://www.111cn.net/database/mysql/46377.htm 有朋友可能会碰到使用Navicat for mysql 远程连接 mySql数据库会提示10061 ...
- ems lite 客户端远程连接mysql server
在本地用ems客户端远程连接虚拟机上的mysql server,弹出客户端没有权限访问mysql server.使用下面方法进行设置:mysql> select host,user,passwo ...
随机推荐
- videojs IE8无法播放解决方案
1.如果是在.cs文件里初始化视频元素,没有遇到无法播放问题. 2.如果是js动态换播放器的poster和src遇到此问题,解决办法是用videojs提供的函数来设置 https://github.c ...
- JAVA基础之——三大特征、接口和抽象类区别、重载和重写区别、==和equals区别、JAVA自动装箱和拆箱
1 java三大特征 1)封装:即class,把一类实体定义成类,该类有变量和方法. 2)继承:从已有的父类中派生出子类,子类实现父类的抽象方法. 3)多态:通过父类对象可以引用不同的子类,从而实现不 ...
- mysql 优化海量数据插入和查询性能
对于一些数据量较大的系统,数据库面临的问题除了查询效率低下,还有就是数据入库时间长.特别像报表系统,每天花费在数据导入上的时间可能会长达几个小时或十几个小时之久.因此,优化数据库插入性能是很有意义的. ...
- Angular7 Drag and Drop
完整代码在最后,下面讲解以此代码为例 1.环境配置 1.1 安装@angular/material.@angular/cdk cnpm install --save @angular/material ...
- Html5不可见标签,及标签属性(元素对象属性) a href target name id 相对路径
标签属性分类(元素对象属性) 不可见标签与可见标签: <head></head> 属于不可见标签, 里面的内容一般用于css还有全局的一些变量,声明等. 而且如果 ...
- html基础-html简介-第一个网页(1)
今天刚刚开通博客园,把我最近整理的html/css来说一下,对于初学者还是有一定的帮助. 一.先来为大家简单普及以下html (1).html英文即:hypertext markup language ...
- 根据自定义区域裁剪ArcGIS切片地图服务
切片地图服务是访问地图最快捷的服务方式.假如要根据地理区域对切图进行访问控制,往往只能针对不同地理区域制作相应的地图,并发布为切片地图服务.而一般在切图的时候又是按全区域实施的,所以给切片管理者造成不 ...
- arcgis JavaScript 加载 mapbox地图
mapbox 地图现在是越来越好看了, 随便试 /** * Created by Administrator on 2018/5/15 0015. */ import * as esriLoader ...
- flutter 生命周期
前言:生命周期是一个组件加载到卸载的整个周期,熟悉生命周期可以让我们在合适的时机做该做的事情, flutter中的State生命周期和android以及React Native的生命周期类似. 先看一 ...
- jedis spring集成
jedis spring集成把jedis的核心对象交给spring管理.jedis核心对象:配置文件.连接池配置对象.连接池.集成方式有两种:spring-data-redis:自己封装 前提:要有一 ...