2007年12月14日金曜日
2007年12月11日火曜日
Google Map , Calendar , Sketchup
現在は Google マップを自分のサイトに貼り付けよう にしたがって、貼り付けるだけで表示は可能。
カレンダー
sketchup
Video チュートリアル
sketchupを楽しもう
レイヤーの変更
Sketchup のデータを Second Life にもっていくには blender 経由、あるいは Google Sketchup -> Second Life export にあるように ruby APIを使うとある程度可能な様子。Ruby スクリプトにサンプルがある。
Lib PC Parts
Google Sketchup Paradise
背景を透明にする方法(Photoshop Elements)
2007年12月6日木曜日
2007年11月29日木曜日
Javascript
個別の“要素”(タグ)に class属性 を指定し、そのクラスをセレクタとすることで、よりきめ細かなスタイル設定ができるようになっています。また、id属性とスタイルを対応させれば、ドキュメントの中でそのidを持つ“要素”だけに適用されるスタイルを定義できます。確かに「JavaScriptは邪道」という意識はあった。
ここでみつけた jQuery を使ってみたが、これを使うとかなり楽になる様子。日本語の解説もあった。
カレンダーなどもjQueryベースのものがある。これで入力はできるが、検知の仕方やら
$('#example').change(function(){
// alert ("test") ;
$("<div><p>" + $(this).val() +"</p></div> ").appendTo("body");
});
JQuery Memo
$("#sl_avatar").load("/search",{});
これにより POST になる。
省略すると GET で http 405エラーとなるケースがある。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript" src="jquery-1.2.1.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("input.buttonBslideup").click(function(){
alert("test");
$("#sl_avatar").load("./test2.html");
});
});
</script>
</head>
<body>
<input type="button" value="buttonBslideup" class="buttonBslideup" />
<div id="sl_avatar"> div sl_avatar</div>
</body>
</html>
Bloger への html 入力
JQuey Get the input field's value with the name of 'bar':
$("input[@name=bar]").val();
2007年10月30日火曜日
Innodbが無効でも type=innodb で create table できてしまう
Enter password: ********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.45-community-nt MySQL Community Edition (GPL)
mysql> create table test ( c1 int ) type=innodb ;
Query OK, 0 rows affected, 2 warnings (0.01 sec)
ただし、よくみると警告が表示されている。
実際に
start transaction ;
insert into test set c1 = 1 ;
rollback ;
しても rollback が効かない。
Innodb を有効にして
alter table test type=innodb ;
することでトランザクションが使えるようになる。
my.conf を変更して有効にする(mysqlの再起動が必要)
#skip-innodb
# Uncomment the following if you are using InnoDB tables
innodb_data_home_dir = C:/xampp/mysql/data/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = C:/xampp/mysql/data/
innodb_log_arch_dir = C:/xampp/mysql/data/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
set-variable = innodb_buffer_pool_size=16M
set-variable = innodb_additional_mem_pool_size=2M
# Set .._log_file_size to 25 % of buffer pool size
set-variable = innodb_log_file_size=5M
set-variable = innodb_log_buffer_size=8M
innodb_flush_log_at_trx_commit=1
set-variable = innodb_lock_wait_timeout=50
2007年10月26日金曜日
データをグラフで表示する
「PHP グラフ」で検索してPHPでフラッシュのグラフを作る「PHP/SWF Charts」をみつける。日本語のデータは表示対応していないようであるが、結構使いやすそう。charts.php ファィルの添付も説明もなくなったような気がするのだけれども...つい何時間か前まとはサイトの内容もかわっている? 製品のサポートというよりは PHP のサポートになることを避けたのか?
2007年10月23日火曜日
LlHTTPRequest で Basic Authentication
Basic Authentication もここをみたらできた。なんだか懐かしい書式。そういえば、10年以上前に使ったことがある。 http://un:pw@xxxx.com 形式。
しかし、slbuzz.com[teleport] の腕時計は怖い。
2007年10月20日土曜日
100秒で20回
http://rpgstats.com/wiki/index.php?title=LlHTTPRequest
HTTP requests made using llHTTPRequest are throttled based on the script owner and region. Requests are throttled to a maximum of 20 requests per 100 seconds.
それから日本語の表示にはURLエンコードが必要
リンデンスクリプトの日本語表示についてとURLエンコードフォーム
2007年10月13日土曜日
XAMPP
最近は一括で導入できるはずなので apache mysql install で検索し XAMPP を見つけ、これを利用することにした。
途中 FileZilla が導入リストにあった。これは知らなかったが、選択することにした。
Apache 2.2 が入ってしまったが、 Port80 が利用されている
The Apache service named reported the following error:>>> (OSとかで起動できない。 netstat -a でみても使われていない。いろいろとサービスを停止してみたが、うまくいかず、結局、マシンの再起動により解決した。 多分、 Skype が原因だと思う。そういえば以前も似たような経験をしたことがあった。
10048)通常、各ソケット アドレスに対してプロトコル、ネットワーク アドレス、またはポートのどれか 1 つのみを使用できます。 :
make_sock: could not bind to address
0.0.0.0:80
http://localhost/ にアクセスすると http://localhost/xampp/ となり phpmyadmin なども即動作するようになった、セキュリティのところでエラーとなった。
Warning: include(lang/jp.php) [function.include]: failed to open stream: No such file or directory in C:\xampp\security\htdocs\index.php on line 13
Warning: include() [function.include]: Failed opening 'lang/jp.php' for inclusion (include_path='.;C:\xampp\php\pear\') in C:\xampp\security\htdocs\index.php on line 13
同じバージョンの作業ログから単純な不具合である様子だが、うまくいかない。どうやら Meadow で jp.php ファイルを開いて、書き込む際に ja.php としてしまっていたようだった。素直にファイルコピーするべきだった。
このセキュリティ画面で mysql の root のパスワードと以下を設定
成功: XAMPPのディレクトリ制御が設定されました!全ユーザのデータは、以下のファイルに格納されました:innodb を有効にする c:/xampp/mysql/bin/my.conf の skip-innodb をコメントアウトして以下のコメントアウトを解除し、mysql を再起動
XAMPPのディレクトリ制御 (.htaccess)
skip-innodb
# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = C:/xampp/mysql/data/
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = C:/xampp/mysql/data/
#innodb_log_arch_dir = C:/xampp/mysql/data/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#set-variable = innodb_buffer_pool_size=16M
#set-variable = innodb_additional_mem_pool_size=2M
# Set .._log_file_size to 25 % of buffer pool size
#set-variable = innodb_log_file_size=5M
#set-variable = innodb_log_buffer_size=8M
#innodb_flush_log_at_trx_commit=1
#set-variable = innodb_lock_wait_timeout=50
ちなみに apache は以下
"c:\xampp\apache\bin\apache.exe" -k runservice
Medow 設定メモ
- .htaccess を編集するために別マシンから C:\Meadow\ および ~/.emacs を COPY。
- 環境変数 HOME 設定し、 C:\Meadow\1.15\bin\meadow.exe のショートカットを作成。
2007年10月8日月曜日
Video on Demand
http://www.caminos.jp/history.html より
■オンデマンドテレビの歴史
テレビは放送時間が決まっていて好きなときに番組を見ることはできません。見たいときにいつでも映像が見れたらすばらしいことです。こうした背景からビデオオンデマンド(VOD)システムへの挑戦は始まりました。
(オンデマンドテレビの一般用語はビデオオンデマンドなので解説はビデオオンデマンドとします。)
■最初の実験VOD システムの最初の実験は1990年頃香港テレコムによって始められました。この VOD システムは技術的に未熟で2000年頃には中止されました。
■大規模実験1994年12月、フロリダ州オーランドでタイムワーナーは4,000世帯に対して VOD システムの大規模実験を行いました。Full Service Network(FSN) と名付けられたこのサービスは18ヶ月間提供されました。FSN はビデオオンデマンド、ショッピング、ゲーム、番組ガイドなどが主要サービスでした。ただ FSN は高価なシリコングラフィックスのインディをベースにしたセットトップボックス(STB)や ATM をベースにした通信網を利用したことなど経済的には採算を度外視したシステムでした。またビデオオンデマンド以外のサービスはその後急速に普及したインターネットに取って変わられました。
■電話会社の挑戦FSN が計画されていた当時米国では60%以上の家庭にケーブルテレビが普及していました。電話会社は VOD システムを商用化すればケーブル会社に対抗できると考えました。1994年初め、米国電話会社ベルアトランティックなどベル系4社は電話線を利用して家庭まで映像を配信しようとして Oracle に VOD システムを発注しました。VOD システムの仕組みは電話線を使い ADSL で1.5Mbps の帯域を確保して MPEG1
のビデオを家庭のテレビにオンデマンドで提供しようとするものです。ビデオサーバから配信されるビデオストリームはテレビに接続するためのセットトップボックス(STB)でデジタル情報から映像情報に変換されます。Oracle は並列コンピュータをサーバに、ビデオサーバのソフトは自社開発し、STB 開発は日本のパートナー(パイオニア、京セラ)に委託しそれぞれがプロトタイピングを完了し通信回線を介して VOD システムが動き出す寸前にまでなりました。
■通信法電話会社のビデオ配信計画に危機感を抱いたケーブル業界は電話会社のビデオ配信を中止させる方法はないかを検討しました。その結果法律論争で電話会社の計画を中止させることにしました。当時の法律は1934年通信法で規制されていましたので電話会社は「他人の通信の媒介」のみが許されていたは時代でした。自己の情報(ビデオコンテンツ)を通信する VOD システムは明らかに1934年通信法違反でした。そのためケーブル会社は政治家に積極的なロビー活動を行い、電話会社のビデオ配信は違法であると政治的に判断させるに至りました。その結果、電話会社によるビデオ配信計画は中止となりました。
■その後1934年通信法は1996年に改正され電話会社によるビデオ配信は違法ではなくなりました。違法性は消えたものの VOD システムの課題は10年以上経っても解決されてきませんでした。
2007年10月1日月曜日
Developer Suite 10g
早速 XE をターゲットに Forms を動かしてみた。
C/S モードでの実行はできなくなっている様子。
C:\DevSuiteHome_1\j2ee\DevSuite\startinst.bat
により Start OC4J Instance ( PORT:8898 )の起動が必要
Oracle Developer Suite 10g (10.1.2.0.2) for Microsoft Windows
http://www.oracle.com/technology/software/products/ids/htdocs/101202winsoft.html
Oracle Developer Suite 10g Release 2 (10.1.2) Documentation
http://www.oracle.com/technology/documentation/devsuite.html
下記の不具合に遭遇
remove the timstamp datatype が必要な様子
Re:FRM-10095: Assertion failed in iewbdbc_oracle_to_id
http://forums.belution.com/en/oracle/000/005/38.shtml
2007年9月27日木曜日
2007年9月16日日曜日
Second Life と Oracle
OracleのBI製品をSecond Lifeの世界と接続し、Second Life内での取引状況を可視化するものだ。このシステムはSecond Lifeが用意するWeb Service APIを通じてBI製品へ情報を取り込んでいるもの。
CGI で http Server と Oracle を連携しだした頃の騒ぎを思い起こさせる。
実際に API を検索してみたがExchange Risk API ,Registration API くらいしかまだここでは公開されていない? IBM の Sametime と Second Life の連携例があった。
2007年9月12日水曜日
監査設定メモ2
- 9.2 より利用可能 ( Enterprise Edition のみ)
- SQLも取得可能であるがパフォーマンスに影響がでるので注意
execute DBMS_FGA.ADD_POLICY ( object_schema => 'SCOTT', object_name => 'EMP',
policy_name => 'SCOTT_EMP_AUD_POLICY_SAL', audit_condition => '1=1',
audit_column => 'SAL');
EXECUTE DBMS_FGA.DROP_POLICY( object_schema => 'SCOTT', object_name => 'EMP',
policy_name => 'SCOTT_EMP_AUD_POLICY_SAL');
execute DBMS_FGA.ADD_POLICY ( object_schema => 'APPLSYS', object_name =>
'WF_DEFERRED', policy_name => 'APPLSYS_WF_DEF', audit_condition => '1=1');
EXECUTE DBMS_FGA.DROP_POLICY( object_schema => 'APPLSYS', object_name =>
'WF_DEFERRED', policy_name => 'APPLSYS_WF_DEF');
*** FGA監査ログの確認
select * from dba_fga_audit_trail ;
*** FGA監査ログの削除
connect sys as sysdba
truncate table fga_log$ ;
*** FGA監査設定の確認
select * from fga$ where enable_flag = 1 ;
select pname , o.name , o.owner# , username
from sys.fga$ f, sys.obj$ o , dba_users u
where f.obj# = o.obj# and o.owner# = u.user_id ;
監査設定メモ
** 標準監査設定 Audit
*** 初期パラメータの変更
- sys でログインし、パラメータ変更後、再起動が必要
alter system set audit_trail = true scope=spfile ;
*** ログイン監査
AUDIT CREATE SESSION BY scott, apps
*** 監査設定
-監査設定は次のセッション(ログイン)から有効
-テーブル名を指定した監査はすぐに有効
audit select table, update table , insert table , delete table by apps by
access ;
audit execute procedure by apps by access ;
*** 監査解除
-監査解除は次のセッション(ログイン)から有効
-テーブル名を指定した監査はすぐに有効
noaudit select table, update table ,insert table , delete table by apps ;
noaudit execute procedure by apps ;
*** 監査証跡(監査ログ)の確認
select * from dba_audit_trail ;
*** 監査証跡(監査ログ)の削除
connect sys as sysdba
truncate table aud$ ;
*** 設定内容の確認(解除の確認)
select count(*) from sys.dba_stmt_audit_opts ;
select count(*) from sys.dba_priv_audit_opts ;
select count(*) from sys.dba_obj_audit_opts
where ( ALT like '%A%' or ALT like '%S%' )
and ( AUD like '%A%' or AUD like '%S%' )
and ( COM like '%A%' or COM like '%S%' )
and ( DEL like '%A%' or DEL like '%S%' )
and ( GRA like '%A%' or GRA like '%S%' )
and ( IND like '%A%' or IND like '%S%' )
and ( INS like '%A%' or INS like '%S%' )
and ( LOC like '%A%' or LOC like '%S%' )
and ( REN like '%A%' or REN like '%S%' )
and ( SEL like '%A%' or SEL like '%S%' )
and ( UPD like '%A%' or UPD like '%S%' )
and ( REF like '%A%' or REF like '%S%' )
and ( EXE like '%A%' or EXE like '%S%' )
and ( CRE like '%A%' or CRE like '%S%' )
and ( REA like '%A%' or REA like '%S%' )
and ( WRI like '%A%' or WRI like '%S%' )
2007年9月5日水曜日
コストとルール
- いろいろと参考になる
- Q. ANALYZEコマンドとFND_STATSパッケージの違いは何ですか ?
- A、 FND_STATSは、統計情報を収集するためにDBMS_STATSパッケージを使用しています。 DBMS_STATSは表の統計情報をパラレルで取得するため、Analyzeコマンドを使用するよりも高速です。 しかし、DBMS_STATSを使用しても、索引の統計情報はシリアルに取得します。
確かに新しい機能を使おうとしたらコストベースにしないといけないのはよくわかるけれども、もともとコストしかサポートしていない DB2 をみているとホントにコストがいいのかどうか、ある程度のサイズのデータベースであればルールベースで問題ないことが多い。この場合、DBA の作業は単純に増えるだけとなる。
それから Oracle も 10g からは本当に CBO だけのサポートになった。
参考URL メモ
http://www.int21.co.jp/pcdn/oracle/article/optimizer.html
http://biz.rivus.jp/class_performance_tuning.html
2007年9月4日火曜日
ハードパースとソフトパース
RDBMS は SQL により指示を与えられると、どのように値を検索するかまず考える。これがハードパース。
バインド変数を利用しないと where句の条件が少し違うだけで、また考えてしまう。
一度、似たような SQL をどう検索するか、考えた結果を憶えておいて、これを利用するのがソフトパース。
このあたりに詳しい仕組みが説明されている。
HARD PARSEの発生の有無によってリカーシブコールの発生回数に違いが現れています。
...
なお、データの偏りが大きく、ヒストグラム統計情報を取得している場合には、WHERE条件をリテラルで指定した方がよりよい実行計画が選択される可能性が高くなります。
なるほど、なんでも使えばいいというものではない、何事も。
ちなみにリカーシブ(再帰)コールとは、 Oracle などは自分の内部情報も
テーブルにもっているので SQL で検索する。つまり SQL を実行するために、さらに内部で自動的に SQL が発行されている。
2007年9月1日土曜日
SQLインジェクション
「価格.com SQL」で検索してみると当時の惨状とこれに対する経営者への非難の様子がわかる。
チーフ・オペレーションズ・エンジニア などという肩書きの技術者がいるところは、日本どころか世界でもまれかもしれないが...
技術的な内容はこのあたりでよく解説されているが、バインド変数を使用しているとこうした攻撃を防ぐことができる。
けれども mod_plsql みたいなところに脆弱性が潜んでいると難しい。
もっとも危険を避けるのであれば Internet ではこうしたものは使わないのが経験あるエンジニアなのかもしれない。
2007年8月31日金曜日
そもそも内部統制とは
現地法人あるいは地方の拠点に権限委譲する。そのためにコンピュータ・システムでお金の使い方をしっかり本社で管理する。従って、このシステム自体もきちんと監査して改竄されないようにしておかなければならない。
しかし、日本企業の場合、権限委譲は中途半端でお金の使い方も人間系の信頼関係の監視下のもとで管理されている。従って本格的なシステムは導入・運用されておらず、よって、この監査を行っても実はあまり意味がない。
中国への日本企業の進出失敗の原因についてかかれた記事でこのような指摘を読んで、これが和製SOX法の違和感の原因なのかと妙に納得した。
バインド変数
SQLを捕まえたい
個人情報が格納されているのはデータベースで、このデータベースを検索するのはSQLであるので、SQLをすべからく保存しておきたい、という気持ちはだけはよくわかる。
でもデータベースのレベルでこれをやるのは無謀のような、そういえば何年か前の年金未納問題騒ぎは検索履歴はきっとアプリケーションのレイヤで検索履歴をもっていたのではと思っていたら、通信レイヤだった模様。
個人情報の漏洩
2004年3月から社会保険庁が保有する年金未納情報がマスコミで報道され、職員の個人情報の漏洩が疑われたため調査が実施され、同年7月に321名の職員の業務目的外の閲覧行為が明らかになった。
その後、2004年1月から12月までの期間における職員の業務目的外の閲覧行為について、2005年3月に全職員を対象に自己申告調査を行った結果、1,535名(2004年7月の処分者321名を含む)の閲覧行為、オンライン通信履歴の記録をもとに調査を行った結果、1,574名の閲覧行為が明らかになった
Swift UI チュートリアル Loading watchOS が終わらない?
Loading watchOS が終わらない? ディスク容量の残量が少ないので不要なシュミレーターを削除したとこころ watchOSのものが全部なくなってしまっていた。 WatchOS を削除して再度インストールしても復活せず。 Create a new simulator で ...
-
1. get_or_insert 自体がトランザクションなのでこれを含めたトランザクションを 作成しようとするとエラーとなる。 File "C:\Program Files\Google\google_appengine\google\appengine\api\...
-
新しいXcodeが使いたかったので MacOS15(Sequoia) にアップグレードしたところ、やはりApacheでPHPが動かなくなっていた。 結論としては brew, openssl, php, httpd を全て再度インストールしたところ動くようになった。 以下、作業ロ...
-
Apache が動かなくなった (MacOS 13.6.7) /var/log/apache2/access_log も error_log も出力されなくなっている $ sudo apachectl start すると以下のようなエラーとなった。 Load failed: ...