极路由、小米路由器动态更新域名ddns脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
1、极路由

#!/bin/sh
DP_Id='dnspod_id'
DP_Key='dnspod_key'
DP_API="login_token=$DP_Id,$DP_Key&format=json&domain_id=xxxxxx&record_id=xxxxxx"
CURL=$(which curl)
Info_API="https://dnsapi.cn/Record.Info -d $DP_API"
wanip=$($CURL -s myip.idiyrom.com?type=ip)
realip=$($CURL -skX POST $Info_API awk -F '"value":' '{print $2}'awk -F '"' '{print $2}')
DP_API1="login_token=$DP_Id,$DP_Key&format=json&domain_id=xxxxxx&record_id=xxxxxx&sub_domain=xxx&value=$wanip&record_type=A&record_line_id=0"
Modify_API="https://dnsapi.cn/Record.Modify -d $DP_API1"
[ "${realip}A" != "${wanip}A" ] && $CURL -skX POST $Modify_API && echo "$(date "+%F %H:%M:%S") Domain xxx.xxxx.com A Record Update To $wanip" >> /var/log/dnspod.log



2、小米路由

#!/bin/sh
DP_Id='dnspod_id'
DP_Key='dnspod_key'
CURL=$(which curl)
wanip=$($CURL -s myip.idiyrom.com?type=ip)
realip=$($CURL -sX POST https://dnsapi.cn/Record.Info -d \
"login_token=$DP_Id,$DP_Key&format=json&domain_id=xxxxxx&record_id=xxxxxx" awk -F '"value":' '{print $2}'awk -F '"' '{print $2}')
[ "${realip}A" != "${wanip}A" ] && $CURL -sX POST https://dnsapi.cn/Record.Modify -d "login_token=$DP_Id,$DP_Key&format=json&domain_id=xxxxxx&record_id=xxxxxx&sub_domain=xxx&value=$wanip&record_type=A&record_line_id=0" && echo "$(date "+%F %H:%M:%S") Domain xxx.xxxx.com A Record Update To $wanip" >> /data/dnspod.log



3、添加计划任务,明天凌晨1点半执行脚本更新

crontab -e

30 1 * * * /data/myddns.sh >/dev/null 2>&1



4、添加开启自启脚本

cat /etc/rc.local

/bin/sh /data/myddns.sh

Mysql bin-log日志设置自动清理及如何手工清理

bin-log日志作用

1、数据恢复:数据库出现故障时,从二进制日志找出那个那个语句引起,从而会写数据。

2、主从同步:主服务增删改查操作,从服务器通过二进制重写报错数据同步。

查看bin-log日志

show binlog events;

show binlog events in ‘mysql-bin.000002’;

清理bin-log日志

1、自动清理:

cat /etc/my.cnf

expire_logs_days = 5 //保留最近5天二进制日志

2、手工清理:

没有设置主从复制,可使用reset master;命令清空二进制日志

存在主从复制,使用以下命令清理二进制日志

purge master logs to ‘mysql-bin.000002’; //清理mysql-bin.000002日志

purge master logs to ‘2018-03-24 14:30:00’; //清理2018-03-24 14:30:00前的日志

purge master logs to before date_sub(now(),interval 2 day); //清理2天前的日志

mysql常见导入导出命令

1
2
3
4
5
6
7
8
9
10
11
导出数据库
语法:mysqldump -u用户名 -p密码 [--default-character-set=utf8] 数据库名 > 导出sql文件名
例子:mysqldump -uropon -p123456 ropon>~/ropon.sql [ d:\ropon.sql ]

导出数据库某个表
语法:mysqldump -u用户名 -p密码 数据库名 表名 > 导出sql文件名
例子:mysqldump -uropon -p123456 ropon users>~/ropon_users.sql [ d:\ropon_users.sql ]

导出数据库结构
语法:mysqldump -u用户名 -p密码 -d --add-drop-table 数据库名>~/ropon.sql [ d:\ropon.sql ]
例子:mysqldump -uropon -p123456 -d --add-drop-table ropon >~/ropon.sql [ d:\ropon.sql ]
1
2
3
4
5
6
7
8
9
导入sql备份文件
语法:mysql -u用户名 -p密码 数据库名<~/ropon.sql [ d:\ropon.sql ]
例子:mysql -uropon -p123456 ropon<~/ropon.sql [ d:\ropon.sql ]

语法:mysqldump -u用户名 -p密码 数据库名<~/ropon.sql [ d:\ropon.sql ]
例子:mysqldump -uropon -p123456 ropon<~/ropon.sql [ d:\ropon.sql ]

语法:mysql -u用户名 -p密码
例子:mysql>source ~/ropon.sql [ d:\ropon.sql ];