##Virtuosoたんをアップデートしたい!
RDFにクエリを投げる時には,SPARQLというSQLライクな言語を使うのですが,そのストアとして使用していたVirtuosoたんをアップデートしようとしてひっかかったので,メモ。
もともとは,Version: 06.01.3127だったのですが,新しいバージョン(Version: 07.0 )だと,新しいSPARQL1.1のクエリも投げられると聞いたので,アップデートしようと試みました。
どっかのUIにあるのか,コマンドでちょちょいと出来るのかと思いきや,思いの外情報が無い(・・;)。twitterでつぶやいたら,@OKB_Pさんが返信をくださいましたっ!!
@maoringo
ただ,内部サーバーにインストールしているvirtuosoをせっかくなので,アップデートしようと思うのですが,一度アンインストールする必要があるのでしょうか。それともすぐに出来るものなのでしょうか。
@OKB_Pさん
商用版は分かりませんが、オープンソース版だとビルドし直して、古い方のvirtuoso.dbファイルをコピーしてやると動くはず(バージョンがあまり離れていない場合?)。 ポート番号がかぶるので、古い方は停止させるかポート番号を変えるかしてます
ありがとうございます!持つべきものは頼もしいおねえさま!というわけだったのですが,実はこの質問をした時には,もう,virtuosoの前のバージョンを削除してしまっていて,しかし,アクセスすると,こんな感じでアクセスできる,うわー,な状態だったので,
##ポートを停止せよ。
なんとか,停止を試みることにしました。
最初は,公式ページを見たのですが,ここで指定したコマンドを実行することが出来ずorz 頂いたメッセージを頼りに,ポートを閉じることに。
あったった。HOW TO CLOSE A PORT IN LINUX
最初に空いているポートを確認。
nmap localhost
unknownでポートが開いているっぽいことを確認。公式ページから,使っているポートが私の環境の場合,1111と8890だったので,キルしたぞなもし。
(ここに至るまで思いの外時間がかかった…)
fuser -k 1111/tcp
fuser -k 8890/tcp
##後はいつもどおりにインストール再開。
それでもって,普通にインストール再開&起動
ダウンロードはこちらから。
普通のインストールは,こちらを見ると便利です。週末京都-VirtuosoをMac OS Xにインストール
Macもlinuxも大体同じです。インストールする際に事前に追加が必要なパッケージについては,インストールしたフォルダ内のREADMEをご覧いただき,チェックの上,追加してください。
$ ./configure
$ make
$ sudo make install
$ cd [インストールしたとこ]/virtuoso-opensource/var/lib/virtuoso/db
$ sudo [インストールしたとこ]/virtuoso-opensource/bin/virtuoso-t -f &
ちなみに今回は,大したデータを入れていなかったので,前のバージョンのものをまるっと消してしまいましたが,@OKB_Pさんが仰った通り,[インストールしたとこ]/virtuoso-opensource/var/lib/virtuoso/db/virtuoso.db
にデータが保存されているようなので,バージョンアップする際には,これをどこかに一時的に避難させておいて,インストールしたものをコピーするのがよさそうです。(動くかどうかは未確認です…)