服务器连通性测试小程序
可以测试到某个服务器的某个端口的连通性。
#!/usr/bin/env python
#-*-coding:GBK -*-
import socket,sys,time,os,signal
from ping3 import ping
result = []
def Seeyon_write(result):
filename = 'result.txt'
with open(filename, 'a+') as file_object:
file_object.write(str(time.asctime( time.localtime(time.time()) ))+result)
file_object.close()
def Seeyon_Con():
Seeyon_sk=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
Seeyon_Result=Seeyon_sk.connect_ex(('59.197.224.47',80))
if Seeyon_Result == 0:
Seeyon_write(' Port is Open! \n')
print(str(time.asctime( time.localtime(time.time()) ))+' Port is Open!')
result.append('1')
else:
Seeyon_write(' Port is Not Open! \n')
print(str(time.asctime( time.localtime(time.time()) ))+' Port is Open!')
result.append('2')
def Seeyon_exit(signum, frame):
...
python批量转换数据库markdown为html
该程序是使用Python把sqlite的article表中的content字段全部由markdown转换为html。 首先安装依赖:
pip install sqlite3
pipinstall markdown
以下是程序主体:
import sqlite3
import markdown
conn = sqlite3.connect('test.db')
cursor = conn.cursor()
for i in range(0,900):
try:
a = cursor.execute('select content from articles where id = %s'%i).fetchall()
for a1 in a:
cursor.execute("update articles set content = '%s' where id = '%s'"%(markdown.markdown(a1[0]),i))
conn.commit()
except:
continue
经测试python2和python3都可以正常运行。
解决Nexus Docker仓库无法搜索镜像(错误代码500)
使用docker search来搜索镜像会返回500错误:
[root@localhost:~]# docker search idocker.io/hello-world
Error response from daemon: Unexpected status code 500
因为平常不怎么使用搜索,而且Nexus前台也有镜像浏览页面,所以一直没花时间去解决。年前封网好不容易有点空闲,寻思着解决下。
经过定位,发现了问题所在:Nexus里面的Docker有3种类型仓库:group、hosted、proxy,也就是组合仓库、本地仓库和代理仓库,其中组合仓库就是本地仓库和代理仓库的聚合,通过测试发现只有本地仓库才支持search请求,其他2种类型仓库都会500错误。
所以,报错的直接原因就是我将search的请求转发到了组合仓库导致的。 解决办法非常简单,在nginx转发里面加一条规则即可:
if ($request_uri ~ '/search') {
set $upstream "nexus_docker_put";
}
解决scp提示"bash scp command not...
今天,装完一台redis,并配置好redis.conf后,想偷懒直接用scp传到另一台redis,省去全部重新编辑的麻烦。结果一执行就出现下面这个错误:
bash: scp: command not found
所有机器我都是最小化安装,所以很多组件没装也是情理之中,所以用yum装一下scp:
yum -y install openssh-clients
装完后,继续执行之前的命令,结果出现如下错误:
[root@cache-ns-4 etc]# scp redis.conf root@192.168.17.125:/usr/local/redis/etc/
root@192.168.17.125's password:
bash: scp: command not found
lost connection
[root@cache-ns-4 etc]# whereis scp
scp: /usr/bin/scp /usr/share/man/man1/scp.1.gz
我擦,这就诡异了!明明装了为毛提示不存在呢?原来是因为目标主机也没装scp,倒是我大意了!登陆后再次执行如下命令安装scp:
yum -y install openssh-clients
回到之前的服务器上,执行最初的命令,果然毫无意外成功了。
ORA-32001 write to SPFILE requested...
错误如下:
ORA-32001: write to SPFILE requested but no SPFILE specified at startup
重新创建一下spfile:
create spfile from pfile;
重启数据库,即可解决此错误。
Oracle 修改服务名的方法
查看当前服务名:
SQL> show parameter service_name;
修改服务名:
SQL> alter system set service_names='orcl' scope=both;