V2EX uti6770werty 的所有回复 第 1 页 / 共 3 页
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX    uti6770werty    全部回复第 1 页 / 共 3 页
回复总数  54
1  2  3  
@stephenyin 成功了,搞不懂为啥把变量放后面就可以。。。
@duke807 在两个步骤之间,我增加过一个 export 输出当前环境变量打印出来,
export PATH="$PATH:/usr/local/mysql/bin:/root"
这条在 shell 的运行过程中,确实没有应用上。。。
这是来显摆域名的吧?
我的情况是,触发器过于维护复杂,安置的时候很爽,但后面有变动就算有文档都变得困难。。。

最后,
INSERT INTO mcrun (starttime,loop,chckport,mcid,UpdateTime) VALUES ('2022-02-15 09:20:11','9','R','217',NOW())
ON DUPLICATE KEY UPDATE
`UpdateTime`=IF(`starttime`<>'2022-02-22 22:22:22',NOW(),`UpdateTime`),
`UpdateTime`=IF(`loop`<>'9' OR `loop` IS NULL,NOW(),`UpdateTime`),
`starttime`=IF(`starttime`<>'2022-02-22 22:22:22','2022-02-22 22:22:22',`starttime`),
`loop`=IF(`loop`<>'9' OR `loop` IS NULL),'9',`loop`);

算研究出来了,
逐个目标拆开写,细写,
我想的是,SET 的顺序优先考虑 UpdateTime 处理了,再去判断真正的数值,
这个逻辑在这个案例里够用,目前妥妥的正常,
不知道会不会有什么幺蛾子没预料会发生的。。。。
谢谢各位,我没有用 ORM 的方式去与数据库交互,至于自增 id ,其实也不需要去考虑的,因为数据的发展永远到不了极限。。。

我琢磨着试试写:
```
INSERT INTO mcrun (starttime,loop,chckport,mcid,UpdateTime) VALUES ('2022-02-15 09:20:11','9','R','217',NOW())
ON DUPLICATE KEY UPDATE `starttime`=IF(`starttime`<>'2022-02-22 22:22:22','2022-02-22 22:22:22',`starttime`),
`loop`=IF((`loop`<>'9' OR `loop` IS NULL),'9',`loop`),
`UpdateTime`=IF(`starttime`<>'2022-02-22 22:22:22' OR `loop`<>'9',NOW(),`UpdateTime`);
```

1 、starttime 和 loop 都能被逻辑识别和修改成功,
2 、主要是 UpdateTime ,好像条件没成立,也会被更新,是不是 SQL 语句做不了这么的逻辑判断?
也就是想把逻辑判断也做在 SQL 语句里
@zhoudaiyu [如果存在则更新除了 uniquekey 以外的数据] ,这个 SQL 是会把 UpdateTime 也更新过去的,数据没有变化的话
@ruanimal



搞了 N 天,我是试着把
POOL = PooledDB(
# creator=pymysql, # 使用链接数据库的模块
creator=MySQLdb, # 使用链接数据库的模块
换成了 MySQLdb 引擎后,SQL 语句的多句执行就正常了
搞不懂是怎么回事
目前执行语句量不大,也没看出会有什么幺蛾子。。。
@liprais PooledDB 的 connection 很奇怪的,它这里 600 只是最高允许 600 而已,我现在只是一台数据处理电脑向 MySQL 写数据而已,SHOW PROCESSLIST 看,也就 7,8 条连接
上面忘了说一个事情,就是就算是峰值 17W 条数据里也好,平时 5,6 千条也好,很多时候都队列的数据,是表里已经有的了,表的索引机制已经避免了重复插入数据,所以存表里的数据量其实不多的。。。

@liprais 8 核,16 线程,CentOS 6 + MySQL 5.5,按月份分表,最多的表数据不过 800 万
@BBCCBB

@heyjei

队列里,不全是 INSERT INTO 。。,也许还有偶然一两个 ALERT 也不一定,要按 FIFO 顺序,所以就不好套批量模板了。。。

by the way,有试过 sqlcmd + ";" + slcmd,这样操作过,但似乎 PooledDB.conn.cursor().excute 不支持这种多语句组装命令执行? 前几天有试过,当时没成功,没研究下去,后面去研究如何高并发去了,结果更迷糊,就这个场合用,现有的高并发非常折腾。。。
@setsunakute 我好像看懂了意思,只是这个要出结果要很久,我这里是 70 多秒才能出来。。。

@rockyliang 是的,每个分组留下 logtime 最新的那一行,然后按 logtime DESC 排序,人话就是:要看每个 proc,最后的 logtime 的整行全部列的内容(*)。。。
@liprais 使用了 2,3 天,ping3 表现相当不靠谱(也有可能是我 PC 的问题,但不会是网络的问题)
while True:
time.sleep(1)
respon = ping3.ping('192.168.33.13',unit='ms',size=128) # 局域网内
print(respon)

respon 可以是这样:
14.000177383422852
13.000011444091797
13.000011444091797
16.000032424926758
0.0
0.0
0.0
0.0
0.0
15.599727630615234
0.0
12.000083923339844
11.00015640258789
14.000177383422852
12.000083923339844

我在另外一个 cmd 窗口,ping -t,延时和连续,稳定如老狗。。。
没啥更好便捷的,真准备上自行车了。。。。
2021-04-18 23:01:44 +08:00
回复了 uti6770werty 创建的主题 MySQL 请教一个 Mysql 条件更新语句,一句完成
@CEBBCAT 赞一个,思路拐了一个弯就没想到,感谢!
@wevsty 明白您的意思,Python 3.66 的 str 已经没有 decode()这个方法了,虽然知道是要转成 gbk,一直都没能找到 utf-8-SIG 转 gbk 的正确方式....
@wevsty 内容带了一堆\xa0,\r\n 的特殊字符,

还是想在做 BeautifulSoup 之前,正确地把字符编码转好
还是根本没办法,必须要对这些\xa0,特殊字符做手动替换吗?
@renmu123 明白,可是我 print(htmlString),已经能看到中文了
str 对象携带的内容编码是 UTF-8-SIG
搜了网络,似乎从来没有人做过对 str 对象本身要转编码这种事情。。。。
@ClutchBear 每个.py 文件,都加了的。。。。
如果是用 replace 的方式,替换完\xa0,还有\xae,\xa***之类的东西,有些担心会替换了很多有用的字符。。。
1  2  3  
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2337 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 24ms UTC 03:59 PVG 11:59 LAX 19:59 JFK 22:59
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86