会社のひとたちと六本木ヒルズでやっていた、DQ展に行って来ました。
鳥山明の原画とか結構むねあつです。
2011年12月18日日曜日
2011年11月12日土曜日
rpmのマクロの定義
rpmとかつくってると、あんまり考えずにBuildRootとかに、%{_tmppath}とか書いちゃうんですけど、じゃあいったいこの辺りの組み込みマクロってどこで定義されてるのよっていうのとちょっと調べたメモ。
rpmbuildのmanより
つまり、/usr/lib/rpm/macros とかにずらーっとありましたとさ。
rpmbuildのmanより
FILES
rpmrc Configuration
/usr/lib/rpm/rpmrc
/usr/lib/rpm/redhat/rpmrc
/etc/rpmrc
~/.rpmrc
Macro Configuration
/usr/lib/rpm/macros
/usr/lib/rpm/redhat/macros
/etc/rpm/macros
~/.rpmmacros
つまり、/usr/lib/rpm/macros とかにずらーっとありましたとさ。
2011年11月7日月曜日
MySQLでの制約メモ
制約あれこれ
- 主キー制約(primary key制約)
- 外部キー制約(Forein key制約)
- 一意制約(Unique key制約)
- 検査制約(check制約)
MySQLならでは
- MySQLで外部キー制約を使用する場合は、InnoDB必須
- Forein key制約の動作については、けっこういろいろマニュアルに書いてる
制約作成時の動作(oracleとの対比)
種類 | MySQL | Oracle |
PrimaryKey制約 | 一意なインデックスを作成する | 既存のインデックスを使用するか、新しいインデックスを作成する |
ForeinKey制約 | インデックスを生成する | インデックスを生成しない |
UniqueKey制約 | 一意なインデックスを生成する | 既存のインデックスを使用するか、新しいインデックスを生成する |
上記の表はオライリー初めてのSQLによっています。
2011年10月30日日曜日
iphone4s買ってしまいました
送信者 ドロップ ボックス |
わたし、今までNexus oneメインだったのですがついに買ってしまいました。あいぽん。。。
いくつか思うところあるのですが、「スマホの基準が相変わらずあいぽん寄りなこと」がでかいです。直接的では無いにしろ、仕事上なんかAndroidとiphoneの違い知ってなきゃいけないかな、と思ってしまう私がいます。ユーザとしてですけどね。
とか言ってますが、一番はモンハン買ったときと一緒で、「みんないいなー」だと思います。
ただ、DocomoのXiとかも興味あるのでガラスマも買ってしまうかも。。。ま、それはそれということでw
2011年9月15日木曜日
redisコマンドチートシート
俺いっつも忘れるので。主にredis-cliの話です。
でも、これ書こうと思っていろいろ見てたら、さすがにだいたい覚えた感じ・・・。
redis 2.2 later想定です。
基本はこれを見ろよって話
コマンドリファレンス — redis v2.0.3 documentation
[bash]
$ redis-cli -h
redis-cli 2.3.9
Usage: redis-cli [OPTIONS] [cmd [arg [arg ...]]]
-h Server hostname (default: 127.0.0.1)
-p Server port (default: 6379)
-s Server socket (overrides hostname and port)
-a Password to use when connecting to the server
-r Execute specified command N times
-i When -r is used, waits seconds per command.
It is possible to specify sub-second times like -i 0.1.
-n Database number
-x Read last argument from STDIN
-d Multi-bulk delimiter in for raw formatting (default: \n)
--raw Use raw formatting for replies (default when STDOUT is not a tty)
--help Output this help and exit
--version Output version and exit
Examples:
cat /etc/passwd | redis-cli -x set mypasswd
redis-cli get mypasswd
redis-cli -r 100 lpush mylist x
redis-cli -r 100 -i 1 info | grep used_memory_human:
When no command is given, redis-cli starts in interactive mode.
Type "help" in interactive mode for information on available commands.
[/bash]
接続時に指定
[bash]
$ redis-cli -n 0
[/bash]
コンソール中で切替(mysqlでいうところのuse)
[bash]
redis> select 0
[/bash]
[bash]
$ redis-cli flushall
[/bash]
[bash]
$ redis-cli monitor
[/bash]
[bash]
$ redis-cli keys *
[/bash]
[bash]
$ redis-cli type [key]
[/bash]
memcacheのstatsみたいな感じっすね。confで有効化してないと出てこない値も多いです。
[bash]
$ redis-cli info
redis_version:2.2.13
redis_git_sha1:00000000
redis_git_dirty:0
arch_bits:64
multiplexing_api:epoll
process_id:9117
uptime_in_seconds:400
uptime_in_days:0
lru_clock:1575027
used_cpu_sys:0.00
used_cpu_user:0.00
used_cpu_sys_children:0.00
used_cpu_user_children:0.00
connected_clients:2
connected_slaves:0
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
used_memory:807112
used_memory_human:788.20K
used_memory_rss:1503232
mem_fragmentation_ratio:1.86
use_tcmalloc:0
loading:0
aof_enabled:1
changes_since_last_save:1
bgsave_in_progress:0
last_save_time:1315984259
bgrewriteaof_in_progress:0
total_connections_received:6
total_commands_processed:42
expired_keys:0
evicted_keys:0
keyspace_hits:0
keyspace_misses:0
hash_max_zipmap_entries:512
hash_max_zipmap_value:64
pubsub_channels:0
pubsub_patterns:0
vm_enabled:0
role:slave
master_host:172.28.238.160
master_port:6380
master_link_status:up
master_last_io_seconds_ago:5
master_sync_in_progress:0
[/bash]
データ詰めたりして遊んでます。
[python]
#!/usr/bin/python2.6
import redis
if __name__=="__main__":
rpool = redis.ConnectionPool(host='xxx.xxx.xxx.xxx',port=6379,db=0)
r = redis.Redis(connection_pool=rpool)
cnt = 0
y = 0
while cnt < 70000:
y = str(y) + '0'
cnt += 1
for i in range(0,10000):
r.set('foo' + str(i),str(y) + str(i))
[/python]
でも、これ書こうと思っていろいろ見てたら、さすがにだいたい覚えた感じ・・・。
redis 2.2 later想定です。
(なにはさておき)コマンドリファレンス
基本はこれを見ろよって話
コマンドリファレンス — redis v2.0.3 documentation
コマンドhelp
[bash]
$ redis-cli -h
redis-cli 2.3.9
Usage: redis-cli [OPTIONS] [cmd [arg [arg ...]]]
-h
-p
-s
-a
-r
-i
It is possible to specify sub-second times like -i 0.1.
-n
-x Read last argument from STDIN
-d
--raw Use raw formatting for replies (default when STDOUT is not a tty)
--help Output this help and exit
--version Output version and exit
Examples:
cat /etc/passwd | redis-cli -x set mypasswd
redis-cli get mypasswd
redis-cli -r 100 lpush mylist x
redis-cli -r 100 -i 1 info | grep used_memory_human:
When no command is given, redis-cli starts in interactive mode.
Type "help" in interactive mode for information on available commands.
[/bash]
主なコマンド類
db切替
接続時に指定
[bash]
$ redis-cli -n 0
[/bash]
コンソール中で切替(mysqlでいうところのuse)
[bash]
redis> select 0
[/bash]
flushall:データ全部削除
[bash]
$ redis-cli flushall
[/bash]
monitor:動作監視
[bash]
$ redis-cli monitor
[/bash]
keys:key一覧
[bash]
$ redis-cli keys *
[/bash]
type:型の確認
[bash]
$ redis-cli type [key]
[/bash]
info:統計情報
memcacheのstatsみたいな感じっすね。confで有効化してないと出てこない値も多いです。
[bash]
$ redis-cli info
redis_version:2.2.13
redis_git_sha1:00000000
redis_git_dirty:0
arch_bits:64
multiplexing_api:epoll
process_id:9117
uptime_in_seconds:400
uptime_in_days:0
lru_clock:1575027
used_cpu_sys:0.00
used_cpu_user:0.00
used_cpu_sys_children:0.00
used_cpu_user_children:0.00
connected_clients:2
connected_slaves:0
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
used_memory:807112
used_memory_human:788.20K
used_memory_rss:1503232
mem_fragmentation_ratio:1.86
use_tcmalloc:0
loading:0
aof_enabled:1
changes_since_last_save:1
bgsave_in_progress:0
last_save_time:1315984259
bgrewriteaof_in_progress:0
total_connections_received:6
total_commands_processed:42
expired_keys:0
evicted_keys:0
keyspace_hits:0
keyspace_misses:0
hash_max_zipmap_entries:512
hash_max_zipmap_value:64
pubsub_channels:0
pubsub_patterns:0
vm_enabled:0
role:slave
master_host:172.28.238.160
master_port:6380
master_link_status:up
master_last_io_seconds_ago:5
master_sync_in_progress:0
[/bash]
参考になるリンク
おまけ
データ詰めたりして遊んでます。
[python]
#!/usr/bin/python2.6
import redis
if __name__=="__main__":
rpool = redis.ConnectionPool(host='xxx.xxx.xxx.xxx',port=6379,db=0)
r = redis.Redis(connection_pool=rpool)
cnt = 0
y = 0
while cnt < 70000:
y = str(y) + '0'
cnt += 1
for i in range(0,10000):
r.set('foo' + str(i),str(y) + str(i))
[/python]
2011年9月13日火曜日
MySQLでrootのパスワードをnullに戻すメモ
環境はmysql 5.5 GA
my.cnfに下記を追加してmysqlをrestart
[bash]
skip-grant-tables
[/bash]
mysqlにログイン
[bash]
$ mysql -uroot
[/bash]
下記のSQLを発行
[SQL]
> use mysql;
> update user set Password=null where Host='localhost' and User='root';
> FLUSH PRIVILEGES;
>\q
[/SQL]
その後SET PASSWORD~とかすればよいです
my.cnfに下記を追加してmysqlをrestart
[bash]
skip-grant-tables
[/bash]
mysqlにログイン
[bash]
$ mysql -uroot
[/bash]
下記のSQLを発行
[SQL]
> use mysql;
> update user set Password=null where Host='localhost' and User='root';
> FLUSH PRIVILEGES;
>\q
[/SQL]
その後SET PASSWORD~とかすればよいです
2011年9月6日火曜日
perlのハッシュ備忘録
メモ
- 重複キーは上書きされる
基本形
[perl]
#!/usr/bin/perl
use strict;
use warnings;
use utf8;
#キーは文字列、値はスカラー
my %sample_hash = (
'hoge01' => 11,
'hoge02' => 12,
'hoge03' => 13,
);
#値の追加
$sample_hash{'hoge04'} = 14;
#値の削除
delete $sample_hash{'hoge01'};
#値の取り出し
foreach my $i (keys(%sample_hash)){
print $i.":".$sample_hash{$i}."\n";
}
[/perl]
以下書きかけ…
ハッシュスライス
多次元ハッシュエミュレーション
登録:
投稿 (Atom)