一般的なこと

SVN190

2010年4月19日

このサイトでのバージョンを、SVN190にアップグレードしました。ほぼ、ver 0.8.0 alphaです。ここで動くことを確認などして、ver 0.8.0を正式にアップする予定です。

ver 0.7.0と比較して、SQLテーブルの構造が若干変更されているので、ver 0.7.0からのアップグレードの場合は少し手間がかかります。ver 0.8.0における新機能などは次の記事に譲るとして、ここでは、ver 0.7.0からのアップグレードの方法について述べます。

まず、次の内容で、ルートディレクトリにPHPファイルを用意します。ファイル名は何でもよいですが、ここでは、backup.phpとします。
<?php
define('_CONF_SELF',basename(__FILE__));
require(dirname(__FILE__).'/config.php');
view::parse_skin('/admin/backup.inc');

次に、/skins/admin/backup.incファイルを作成し、内容を次のようにします。
<%select(template)%>
<%case(init)%>
	<%if.member.isadmin%>
		<%header(Content-type: text/plain; charset=UTF-8)%>

		<%data.set(jeans_config,table)%>
		<%view.query(backup.inc,SELECT type,name,contextid,value FROM jeans_config WHERE value LIKE 'http://%')%>

		<%data.set(jeans_group,table)%>
		<%view.query(backup.inc,SELECT id,name,desc,gid,sgid,xml as x FROM jeans_group)%>

		<%data.set(jeans_item,table)%>
		<%view.query(backup.inc,SELECT id,author,time,title,body,more,gid,sgid,xml as x FROM jeans_item)%>

		<%data.set(jeans_comment,table)%>
		<%view.query(backup.inc,SELECT id, author,itemid,body,xml as x FROM jeans_comment)%>

		<%data.set(jeans_binary,table)%>
		<%view.query(backup.inc,SELECT id,type,name,contextid,bindata,binsize,time,mime, xml as x FROM jeans_binary)%>

	<%endif%>
<%case(head)%>

	/*****************
	  SQLite dump
	  <%data(table)%>

	*****************/

<%case(body)%>
	<%select(table)%>
	<%case(jeans_group)%>
		INSERT OR REPLACE INTO jeans_group (id,name,desc,gid,sgid,xml)
		VALUES (<%sql.quote(id)%>,<%sql.quote(name)%>,<%sql.quote(desc)%>,<%sql.quote(gid)%>,<%sql.quote(sgid)%>,<%sql.quote(x)%>);

	<%case(jeans_item)%>
		INSERT OR REPLACE INTO jeans_item (id,author,time,title,body,more,gid,sgid,xml)
		VALUES (<%sql.quote(id)%>,<%sql.quote(author)%>,<%sql.quote(time)%>,
		<%sql.quote(title)%>,<%sql.quote(body)%>,<%sql.quote(more)%>,
		<%sql.quote(gid)%>,<%sql.quote(sgid)%>,<%sql.quote(x)%>);

	<%case(jeans_comment)%>
		INSERT OR REPLACE INTO jeans_comment(id,author,itemid,body,xml)
		VALUES (<%sql.quote(id)%>,<%sql.quote(author)%>,<%sql.quote(itemid)%>,<%sql.quote(body)%>,<%sql.quote(x)%>);

	<%case(jeans_config)%>
		INSERT OR REPLACE INTO jeans_config(type,name,contextid,value)
		VALUES (<%sql.quote(type)%>,<%sql.quote(name)%>,<%sql.quote(contextid)%>,<%sql.quote(value)%>);

	<%case(jeans_binary)%>
		INSERT OR REPLACE INTO jeans_binary(id,type,name,contextid,bindata,binsize,time,mime,xml)
		VALUES (<%sql.quote(id)%>,<%sql.quote(type)%>,<%sql.quote(name)%>,<%sql.quote(contextid)%>,
			base64decode('<%data.base64(bindata)%>'),
			<%sql.quote(binsize)%>,<%sql.quote(time)%>,<%sql.quote(mime)%>,<%sql.quote(x)%>);

	<%endselect%>
<%case(foot)%>

	/*** end <%data(table)%> ***/

<%endselect%>

ログインした状態で、http://your.site/yourblog/backup.phpにアクセスし、表示された内容を保存しておきます。

次に、サイトへの外部からの接続を、.htaccessなどを用いて遮断しておき、/sqlite/.htdbsqlite及び/sqlite/.htdbloginの2つのファイルを削除します。その後、SNV190もしくは0.9.0-alphaの各ファイルを展開します。

http://your.site/yourblog/install/にアクセスして、新規インストールを行います。管理画面にログインし、データベース管理画面に入ります。先ほど保存しておいたバックアップファイルの内容をクエリー・テキストエリアにコピーし、実行します。

これで、ほぼ前回と同じ状態になったはずです。あとは、プラグインの再インストールと再設定などを行います。

コメント

コメントはありません

コメント送信