[メモ] Microsoft AccessでHTMLタグ削除

CSVをAccessで加工しなきゃいけないときに重宝した。

1)標準モジュールに次のファンクションを追加します。

Option Compare Database
Option Explicit

Public Function ExterminateTags(ByVal html As String) As String
Dim reg
Set reg = CreateObject(“VBScript.RegExp”)
With reg
.Global = True
.IgnoreCase = True
End With
reg.Pattern = “<.*?>”
ExterminateTags = reg.Replace(html, “”)
End Function

2)クエリーの新規作成をします。

3)更新クエリーにします。

  クエリーのデザインビューから、メニューの[クエリー]-[更新]を押す

4)
フィールド HTML文字列
テーブル テーブル1
レコードの更新 ExterminateTags([HTML文字列])

などのようにします。

MySQLサーバとAPPサーバを別にする際のトラブル

192.168.0.4をAPP+MySQL(Master)
192.168.0.5をMySQL(Slave)
にしようと思い、
単純に
PHPで
192.168.0.5のMySQLに接続、SELECTしてみた。

エラーが出てしまった。

packet 6 bytes shorter than expected

mysqlnd cannot connect to MySQL 4.1+ using old authentication

などと書いてある。

ググってみたら、userテーブルの中のPasswordカラムが16バイトのままで

古い。

userテーブルを確認すると、passwordカラムのデータ型はchar(41)、
パスワードが16バイトでした。

SELECT password(‘test’);

で確認すると、16バイト。

MySQL4.1以降では、
http://dev.mysql.com/doc/refman/4.1/ja/password-hashing.html にあるとおり。

my.cnfにある
[mysqld]
old-passwords

#old-passwords
にして、再起動。

そしたら、正常につながった。

約5日間も悩んだ。

192.168.0.4にあるPHPから192.168.0.5のMySQLをSELECTできた。

MySQLレプリケーション設定

できた。

ここを参考にした。

テーブル別のレプリケーション設定。

マスターDBをMacOS X 10.6 IP:192.168.0.4
スレーヴDBをCentOS5.3(on VMware Fusion) IP:192.168.0.5
にした。

スレーヴ側は参照(SELECT)専用で、更新などを行ってはいけない。

マスターDBにはFTP設定をしていなかったため、
MasterのデータベースをSlaveにコピーする際には
Slave側で
root# wget http://192.168.0.4/testDB.tar
とした。

設定中、Slave側でSelectをしたらエラー。readできないと。

展開後、パーミッション、グループ、オーナーが違っているので、
chmod,chgrp,chownで他のを参考に同じにした。

Snow Leopard(Mac OS X 10.6) MySQL バイナリログ

root# ls /usr/local/mysql/data/

にある。

root# /usr/local/mysql/bin/mysql -u root -p

Mac OS X 10.6(Snow Leopard)でrootユーザーを有効にする。

基本的にMac OS X 10.5と同じですが、ディレクトリユーティリティ.appの場所が変わってしまいました。
http://mac.kumadoumei.net/article/32320786.html

1./システム/ライブラリ/CoreServices/ディレクトリユーティリティ.appを起動します。

Ameba x 67WSサーバセッション Myメモ

アメーバピグの開発やってる方は、自費でEeeBoxらしきものを5台くらい買って、サーバの分散テストをやってたみたいな話があったはず。

真似してみようとおもって、調べた。
それと同じ感じで、


LUV MACHINES(Lm-mini)シリーズ
OS無しなら、¥24,990~が熱いな〜。

Ameba x ロクナナ データベースセッション Myメモ

ココまでできるの!?Amebaを支えるMySQLシステム構築
というお題目でのデータベースセッション。


<アジェンダ>
1.レプリケーション
  データベースの運用でI/O負荷が問題でSELECTのレスが低下する。
  解決としてI/O分散のためスケールアップすることで簡単に解決できるが
  コストがかかる。
  データベースの改善策として、SQLのチューニング、インデックスの見直し
  レプリケーションを利用した分散。
  MySQLの特徴として、レプリケーション機能で簡単に負荷分散できる。
 1-1.レプリケーションを利用した分散について
  スキーマ別やテーブル別でSlaveサーバを構築。
  スキーマ別での分散は「アメばた会議」で利用。
  テーブル別での分散は「ブログ」、「なう」など多くのサービスで利用。
1-2.用途に合わせたレプリケーション
  導入からテーブル分割する必要はないが、設計段階からスケールアウト
  できる設計すれば迅速対応できる。
  データ量が多くなるテーブル同士でのJOINはさける。
 1-3.レプリケーションを効果的に使うための設計
 1-4.ストレージエンジンとレプリケーション
トランザクションを必要とする更新=>InnoDB
  SELECT発行が多い場合は、Slaveサーバのストレージエンジンを
  Memoryエンジンにすることで、パフォーマンスが出る。
  Memoryエンジンは、データ、インデックスをメモリ上で管理するので
  書き込み、読み込み共に、最もはやい。ただし、Memoryエンジンは
  MySQLの再起動でデータが消えてしまうので再起動方法や障害時の
  データ復旧など予め考えておくことが必要。
ピグでMemoryエンジンを使用。
  Masterサーバには不要な履歴などのテーブルがある場合はBlackHoleエンジン
  MasterサーバのI/O負荷を軽減できる。<=参照はSlaveでするから。
  MasterのDisk容量を確保、I/Oを減らせる。
1-5.多階層のレプリケーション
  ブログのデータをマイページ、プロフィールで使うなど。
  データセンターが違うとき。
2.MySQLの運用
  監視サーバからケータイにメール。
  MySQLサーバでは、PING監視、PORT監視、レプリケーション監視、
  RAID監視を行っている。ツールは「mon」。
  「mon」はデフォルトでPING、PORT監視をするコマンドがある。
  レプリケーション監視については、独自に作成。
   レプリケーション監視にはMySQLコマンドと「SNMP」を使用。
   SHOW SLAVE STATUS
 2-1.バックアップ
   mysqldumpでのバックアップは一般的だが、リストアに時間がかかるし、
   使える保証がない。
   LVM2 スナップショット機能でバックアップ。
 2-2.障害監視
  障害監視ツール「mon」以外に「Negios」を使用して
  ”Load Average”と”Diskの使用率”も監視しています。
 2-3.性能監視
  主にLoad Average、トラフィック量、Disk I/O、Memory使用量
  Disk使用量、レプリケーション遅延、vmstat
3.今後の取り組み
  新しいMySQLのバージョンの検証。ストレージエンジンのパフォーマンス
  サードパーティー系のストレージエンジン。
  KeyValue型の検証。
  
メモ:
Amebaでは年50台増えている。
DBサーバーは今は250台くらい。
ほぼすべてをmysqlで運用。
SQL発行回数2500回/secを超えたら詰まった。
監視を強化
3秒はスローログとする。

2500回/secを超えたら詰まったのは、
IBM/X336
4コアサーバでやっている。
DELL/R300
ではそれ以上だった。

XenでやったらI/Oがよろしくないから仮想やってない=単体サーバ。

アメブロはオラクルとハイブリッド。
現在使っているMySQLのバージョンは4.1.21と5.0系
5.1はバグが多いと。

Ameba x ロクナナ One Day College行ってきた。

Ameba x ロクナナワークショップ One Day College行ってきた。


★マネージメント セッション
ブログ、芸能人、ピグ、モバイル…Amebaってどうやってビジネスしているの? †

1/22(金)に開催されたAmeba x ロクナナワークショップに出席
主催:株式会社サイバーエージェント
ロクナナワークショップ

サイバーエージェントがメディア事業として展開しているAmebaについて聞いてきた。
①メディアを育む ⇒②ビジネスエンジンの投入⇒③メディアに合わせて改善
自社開発のコンテンツを育てるには、プラットフォームと、コンテンツの両方の育成が
必要であり、ユーザーは自己実現欲を満たすことで、そのコンテンツに長く滞在し、
購入をする。その点がECで置き換えたときと全く同じであり、商品を出品するだけ
(器を用意するだけ)でなくコンテンツの充実もECサイトの成長には重要。





その他のブログでの記事

Ameba x ロクナナワークショップ One Day College 無事終了
http://ameblo.jp/lionbaby/entry-10440788661.html

Ameba×67WS イベント無事終了!
http://ameblo.jp/yana/entry-10440611721.html

Ameba x ロクナナワークショップ One Day Collegeまとめ その1(´・ω・)
http://ameblo.jp/konica/entry-10440758902.html

Ameba x ロクナナワークショップ まとめ その2(´・ω・)
http://ameblo.jp/konica/entry-10440788888.html

目標設定は明確化し、毎日見直す。

年末から続いている目標管理。

私自身のスキルアップを目的として、

今年やりたいことを年末にあげてみました。

目標達成に向けて、やれてます!

それには、毎日30分刻みで、スケジューリングをしておくこと。

できないことが2つくらい出てきますが、

最近は概ね予定通りで進んでいます。

Read the rest of this entry »

メモ:MySQL SELECT文に任意のフィールドを挿入する

mysql> SELECT “u” AS フィールド名, store . * FROM store

Search

Subscribe

You can subscribe to this website via RSS.


Categories