18.
Norikra SQL
SELECT
COUNT(1, status like "5%")/COUNT(1)*100 AS rate_5xx,
COUNT(1, status like "4%")/COUNT(1)*100 AS rate_4xx,
COUNT(1, status like "3%")/COUNT(1)*100 AS rate_3xx,
COUNT(1, status like "2%")/COUNT(1)*100 AS rate_2xx
FROM
access_log.win:time_batch(1 min)
WHERE
ua NOT LIKE '%some_bot%'
1分間のtime window毎に集計
22.
MySQL 5.7
•Multi-Source Replication
•Trigger で書き換え
23.
Master
Slave Backup
Master Backup Master Backup
Main Cluster Sub Cluster Sub2 Cluster
table A,B,C table D table E,F,G,H
Multi-Source Replication
analyze-db
table A,B,C,D,E,F,G,H...
24.
Multi-Source Replicationの
使い方
CHANGE MASTER TO MASTER_HOST='db1',.. FOR CHANNEL 'db1';
START SLAVE FOR CHANNEL ‘db1’;
STOP SLAVE FOR CHANNEL ‘db1’;
SHOW SLAVE STATUS FOR CHANNEL ‘db1’G
FOR CHANNEL をつけるだけ。問題なく動作している
25.
Triggerで書き換え
CREATE TRIGGER insert_user_address
BEFORE INSERT ON user_address
FOR EACH ROW
BEGIN
SET NEW.family_name = MD5(concat(NEW.family_name,'secret_key'));
SET NEW.first_name = MD5(concat(NEW.first_name,'secret_key'));
END;
CREATE TRIGGER update_user_address
BEFORE UPDATE ON user_address
FOR EACH ROW
BEGIN
SET NEW.family_name = MD5(concat(NEW.family_name,'secret_key'));
SET NEW.first_name = MD5(concat(NEW.first_name,'secret_key'));
END;
MD5でhashに変更
ユニーク性は確保
34.
[kazeburo@kazeburomba2-2 /tmp]% php -v
PHP 5.6.5 (cli) (built: Jan 28 2015 16:00:57)
$ php hoge.php
PHP Warning: PDO::commit(): MySQL server has gone away
in /private/tmp/hoge.php on line 14
PHP Warning: PDO::commit(): Error reading result set's
header in /private/tmp/hoge.php on line 14
Hello!!
$
37.
$ php hoge.php
PHP Fatal error: Uncaught exception 'PDOException'
with message 'There is no active transaction' in /
private/tmp/hoge.php:17
Stack trace:
#0 /private/tmp/hoge.php(17): PDO->rollBack()
#1 {main}
thrown in /private/tmp/hoge.php on line 17
$
42.
<?php
$pdo = new PDO('mysql:dbname=test;host=127.0.0.1', 'root', '');
$pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);
$sth = $pdo->prepare('SELECT * FROM buffer');
$sth->execute();
while ($rows = $sth->fetch(PDO::FETCH_ASSOC)) {
#job($rows)
}
echo “hello!n”;
十分に大きい
テーブル
43.
$ rpm -qa|grep php
php-5.3.3-27.el6_5.x86_64
$ php -i
PDO Driver for MySQL => enabled
Client API version => 5.1.70
$ php fuga.php
hello!
$
44.
$ php -v
PHP 5.6.5 (cli) (built: Jan 28 2015 16:00:57)
$ php fuga.php
PHP Warning: Empty row packet body in /private/tmp/
fuga.php on line 23
Warning: Empty row packet body in /private/tmp/fuga.php
on line 23
$
アイエエエエ!ナンデ!エラーナンデ!
Be the first to comment