我正在尝试通过 python3.4 执行以下子进程命令
cd /home/mailer-domains/domain | rndc loadkeys domain
Run Code Online (Sandbox Code Playgroud)
我已经尝试了许多使用 .call 和 .Popen 的方法,但它要么不喜欢我的管道,要么不喜欢我的开关
>>> subprocess.call(['cd /home/mailer-domains/'+domain, '|', 'rndc', 'loadkeys', domain])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.4/subprocess.py", line 537, in call
with Popen(*popenargs, **kwargs) as p:
File "/usr/local/lib/python3.4/subprocess.py", line 859, in __init__
restore_signals, start_new_session)
File "/usr/local/lib/python3.4/subprocess.py", line 1457, in _execute_child
raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'cd /home/mailer-domains/lecomm.com'
>>> subprocess.call(['cd /home/ex-mailer-domains/'+domain, '&&', 'rndc', 'loadkeys', domain])
Traceback (most recent …Run Code Online (Sandbox Code Playgroud) 我在两台不同的服务器上有匹配的数据库(mysql 复制不是一个选项)。我需要查看一个表 2 中是否缺少一条记录,如果是,则截断表 2,然后从表 1 复制到表 2。每个表都位于不同的 IP/服务器上。
代码:
$pdoyd = new PDO(
'mysql:host=' . DB_HOST_YODA . ';dbname=' . DB_DATABASE_DNS,
DB_USER_DNS,
DB_PASSWORD
);
$pdoyd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdoyd->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$truntbl = array('cryptokeys', 'domains', 'records');
foreach($truntbl as $tbl){
$sql = 'truncate '.$tbl;
$statementyd = $pdoyd->prepare($sql);
$useryd = $statementyd->execute();
var_dump($statementyd);
echo '<br>';
}
Run Code Online (Sandbox Code Playgroud)
将丢失的记录从一台服务器上的一个表复制到另一台服务器上的另一个表的有效方法是什么?