寻觅生命中的那一片浅草......

发布者 夜行人

ssh到远程服务器执行命令并留在远程服务器

ssh -t 192.168.8.51 “cd /data/ && ls && /bin/bash -i”

-t 是强制分配终端,使tab键补全等可以用

bash -i 是指这个shell是交互的

zz:Python替换JavaScript:Brython

Brython 设计用于替换网页上的 JavaScript 脚本语言,它使用 Python 来编写脚本,并直接在网页上执行。

<script src="brython.js"></script>
<body onload="brython()">

<script type="text/python">
t = TABLE()
for i in range(10):
    t <= TR(TD(i)+TD(i*i))
doc <= t
</script>

转载自:http://www.oschina.net/p/brython

又一个集中管理工具:chef

和puppet一样,也是用ruby写的,现在都流行DevOPS,chef号称可以让你很容易编写自己的代码。

教程见:http://www.mynameiskate.com/visual-guide-to-chef/

官方wiki:http://wiki.opscode.com/display/chef

加快MySQL备份的还原速度

针对不同的备份有不同的方式

txt
~~~~~~~~~~~~~~~~~~~~~

mysqlimport的速度

mysqlimport支持多线程::

mysqlimport –debug-info –use-threads=2 –local -uroot -pxxxx  logs `find . -name “*.txt”`

单个sql
~~~~~~~~~~~~~~~~~~~~~~~

有一个开源项目:tbdba-restore-mysqldump.pl

地址:https://github.com/orczhou/dba-tool/blob/master/tbdba-restore-mysqldump.pl

MySQL死锁导致无法查询

客服反馈后台无法查询,原因大概知道,是因为MySQL的事务产生了死锁,以往都不知道是哪个事务锁住了,只能很粗暴地重启MySQL
最近查找到一个方法,不用重启MySQL,记录如下

登录到MySQL,来看下有哪些MySQL事务

可以看到一个时间持续了比较久的事务,现在时间是13点了,而这个事务的开始时间是2012-11-09 12:15:14,显然是不正常的,我们看这个事务对应的mysql的线程ID(trx_mysql_thread_id)是82230715,就是这个事务导致的

13:01:48pm> SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX;
+———–+———–+———————+———————–+——————+————+———————+———–+———————+——————-+——————-+——————+———————–+—————–+——————-+————————-+———————+——————-+————————+—————————-+—————————+—————————+
| trx_id | trx_state | trx_started | trx_requested_lock_id | trx_wait_started | trx_weight | trx_mysql_thread_id | trx_query | trx_operation_state | trx_tables_in_use | trx_tables_locked | trx_lock_structs | trx_lock_memory_bytes | trx_rows_locked | trx_rows_modified | trx_concurrency_tickets | trx_isolation_level | trx_unique_checks | trx_foreign_key_checks | trx_last_foreign_key_error | trx_adaptive_hash_latched | trx_adaptive_hash_timeout |
+———–+———–+———————+———————–+——————+————+———————+———–+———————+——————-+——————-+——————+———————–+—————–+——————-+————————-+———————+——————-+————————+—————————-+—————————+—————————+
| 31868CED0 | RUNNING | 2012-11-09 12:15:14 | NULL | NULL | 2 | 82230715 | NULL | NULL | 0 | 0 | 2 | 376 | 1 | 0 | 0 | REPEATABLE READ | 1 | 1 | NULL | 0 | 10000 |
+———–+———–+———————+———————–+——————+————+———————+———–+———————+——————-+——————-+——————+———————–+—————–+——————-+————————-+———————+——————-+————————+—————————-+—————————+—————————+

我们登录到mysql把它kill掉

13:01:55pm> kill 82230715;

这样,就可以查询了

其他

查看正在锁的事务

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;

查看等待锁的事务

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;

2025年七月
« 5月    
 123456
78910111213
14151617181920
21222324252627
28293031