string型はnullも扱えるのが特徴ですが
なんと落とし穴があります。
string型のメリットゼロになります。
nullを文字列の終端として扱うコンポーネント
TMemo
TStringList
また、TStringListは終端に勝手に改行記号がつきます
もーなんというかTStringListは、ふん実装です
また、最大化最小化のイベントも
誤動作するのです。
えぇぇ 途中のバージョンから出現したのです。
delphi2005のソフトでdbと接続すると無応答状態になって
フリーズするので
えぇ
旧バージョンでは問題なく動く単純な
正当なコードで実行時 フリーズですから
もぉー あきれかえって お金かえせよ 状態です。
まってもまってもまともな修正バージョンでないし
きちんと使える製品にして販売しなさいといいたい
いつまでたってもコンポーネントレベルでunicodeには
対応しないし
» 続きを読む
PC1台にMySQL複数インストール
執筆:2006/11/28
編集:2006/11/29
前回は、仮想OSを使ったインストール方法を紹介しました。
メモリに余裕がないと運用にはむかない方法でした。
mysql付属の英語のヘルプを読んでいましたら
どうも複数インストールに対応していました。
今回は、ポート番号を変更することで
1台のPCに同時に複数のバージョンを起動する方法です。
ここでは、すでにMySQL4.1.xの自動インストールしてある状態で
4.0を追加インストール前提で書いてあります。
では、公式サイトからダウンロードしましょう。
わかりにくいところにありますので根気よく探してください。
執筆時では
一つ前の.26までは、setup.exeもあるようですが
mysql-noinstall-4.0.27-win32.zip
が最新のようだったのでダウンロードしました。
展開後
C:\Program Files\MySQL\MySQL Server 4.0に全部移動。
設定ファイルは、
デフォルトのcnfだとダイヤルアップファイルと誤認識するようなので
ここでは、拡張子は、iniを使います。
C:\Program Files\MySQL\MySQL Server 4.0\my-small
をmy.iniとしてコピーします。
(copy my-small.cnf my.iniにした方が無難)
wordpadでmy.iniを開いて、ポートを3307に変更
(my-small.cnfは拡張子が見えない可能性がありますので
dosプロンプトで確認した方が無難です)
WinXPでは、
ren my.ini.cnf my.iniはなぜか無視されたので注意しましょう。
変更部分 C:\Program Files\MySQL\MySQL Server 4.0\my.ini |
|
[mysqld-4.0]
basedir="C:/Program Files/MySQL/MySQL Server 4.0/"
datadir="C:/Program Files/MySQL/MySQL Server 4.0/data/"
port = 3307
enable-named-pipe
socket = mypipe1 |
C:\> |
"C:\Program Files\MySQL\MySQL Server 4.0\bin\mysqld-nt" --install mysqld-4.0 --defaults-file="C:\Program Files\MySQL\MySQL Server 4.0\my.ini" |
C:\> |
NET START mysqld-4.0 |
|
|
間違った場合は、以下で削除してやり直しましょう |
C:\> |
"C:\Program Files\MySQL\MySQL Server 4.0\bin\mysqld-nt" --removel mysqld-4.0 |
コントロールパネル→管理ツール→サービスで
MySQLとmysqld-4.0が動いているか確認しましょう。
4.0.27の起動の確認 |
C:\> |
mysql -P 3307 |
mysql> |
status |
mysql> |
quit |
4.1.xの起動の確認 |
C:\> |
mysql -u root |
mysql> |
status |
mysql> |
quit |
正常に出力されていたら
インストール作業は終了です。
必要に応じてサービスの起動停止のバッチファイルも作っておくと便利です。
起動
NET START サービス名
停止
NET STOP サービス名
自動起動の場合は、管理ツールで確認しましょう。
あまり使わない場合は、サービス開始を手動にして
バッチファイルで起動・停止するようにすると
メモリの消費を最小限に抑えることができます。