<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>ひでもんメイク</title>
<link>https://ameblo.jp/tenamonyamake/</link>
<atom:link href="https://rssblog.ameba.jp/tenamonyamake/rss20.xml" rel="self" type="application/rss+xml" />
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com" />
<description>I Love a Make!</description>
<language>ja</language>
<item>
<title>Postgresqlのロール関係の例</title>
<description>
<![CDATA[ <p>Postgresqlのロール関係の基本をメモしておく。</p><br><p>参考サイト：DbOnlineさん</p><p><a href="http://www.dbonline.jp/postgresql/index.html">http://www.dbonline.jp/postgresql/index.html</a> </p><br><p>ロールとは：<br>接続の為のログインの管理やデータベースなどへの各権限の設定をロール単位で行います。<br>ロールにはユーザーやグループなどのまとまりのようなものです。</p><br><p>ロールの権限とは：<br>スーパーユーザーと所有者（オブジェクトを作成したユーザ）は<br>デフォルトで全ての権限を保持しているため、オブジェクトの所有者に権限を許可する必要はありません。<br>それ以外のロールに対して権限を付与するにはGRANTを使います。</p><br><p>例</p><p>■psql実行<br>$ psql -l<br>$ psql database<br>$ psql -U user -h localhost database</p><p>$ psql -f sqlfile -U user database</p><br><p>■psqlコマンド<br>\du ロールの詳細な情報<br>\z 権限の詳細な情報</p><br><p>■ロールの作成<br>・基本形<br>CREATE ROLE role_name<br>・ログイン可能なロール<br>CREATE ROLE role_name WITH LOGIN<br>・ログイン可能かつパスワード設定<br>CREATE ROLE role_name WITH LOGIN PASSWORD 'password'<br>・ログイン可能かつデータベース作成可能 <br>CREATE ROLE role_name WITH LOGIN CREATEDB PASSWORD 'password'</p><br><p>■ロールの変更<br>・パスワード生成および変更<br>ALTER ROLE role_name WITH PASSWORD 'password'<br>・ロール編集権限、データベース作成権限付与<br>ALTER ROLE role_name WITH CREATEROLE CREATEDB</p><br><p>■ロールの削除<br>DROP ROLE role_name</p><br><p>■ロールの権限追加<br>GRANT SELECT, UPDATE, INSERT ON table_name TO role_name;<br>GRANT ALL ON table_name TO role_name;</p><br><p>■ロールの権限削除<br>REVOKE SELECT, UPDATE, INSERT ON table_name FROM role_name;</p><br><p>○ロール作成・変更のオプション<br>SUPERUSER （デフォ：NOSUPERUSER）<br>CREATEDB （デフォ：NOCREATEDB）<br>CREATEROLE （デフォ： NOCREATEROLE）<br>CREATEUSER （デフォ：NOCREATEUSER）<br>INHERIT （デフォ：NOINHERIT）<br>LOGIN （デフォ：NOLOGIN）<br>CONNECTION LIMIT connlimit<br>PASSWORD 'password'<br>VALID UNTIL 'timestamp' <br>IN ROLE rolename [, ...]<br>IN GROUP rolename [, ...]<br>ROLE rolename [, ...]<br>ADMIN rolename [, ...]<br>USER rolename [, ...]<br>SYSID uid </p><br><p>○権限の追加・削除のオプション<br>GRANT {{SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER}<br>[,...] | ALL [PRIVILEGES]}<br>ON [TABLE] tablename [, ...]<br>TO {username | GROUP groupname | PUBLIC} [, ...] [WITH GRANT OPTION]</p><p>GRANT {{CREATE | TEMPORARY | TEMP} [,...] | ALL [PRIVILEGES]}<br>ON DATABASE dbname [, ...]<br>TO {username | GROUP groupname | PUBLIC } [, ...] [WITH GRANT OPTION]</p><p>GRANT {EXECUTE | ALL [PRIVILEGES]}<br>ON FUNCTION funcname ([[argmode] [argname] argtype [, ...]]) [, ...]<br>TO {username | GROUP groupname | PUBLIC} [, ...] [WITH GRANT OPTION]</p><p>GRANT {USAGE | ALL [PRIVILEGES]}<br>ON LANGUAGE langname [, ...]<br>TO {username | GROUP groupname | PUBLIC} [, ...] [WITH GRANT OPTION]</p><p>GRANT {{CREATE | USAGE} [,...] | ALL [PRIVILEGES]}<br>ON SCHEMA schemaname [, ...]<br>TO {username | GROUP groupname | PUBLIC} [, ...] [WITH GRANT OPTION]</p><p>GRANT {CREATE | ALL [PRIVILEGES]}<br>ON TABLESPACE tablespacename [, ...]<br>TO {username | GROUP groupname | PUBLIC} [, ...] [WITH GRANT OPTION]</p><p>GRANT role [, ...]<br>TO {username | GROUP groupname | PUBLIC} [, ...] [WITH ADMIN OPTION]<br></p>
]]>
</description>
<link>https://ameblo.jp/tenamonyamake/entry-10298099679.html</link>
<pubDate>Sun, 12 Jul 2009 00:41:05 +0900</pubDate>
</item>
<item>
<title>ゴルフ：初の本コースへデビュぅ～</title>
<description>
<![CDATA[ <p>先日、</p><br><p>初めて、ゴルフのコースに行ってきました。</p><br><p>結構、坂道あって体力いるのね。</p><br><p>もっと、おだやかなスポーツやとおもてた。しらんかった　(　 ﾟ ▽ ﾟ ;)</p><br><br><p>で、スコアは１２６．　以外にボロボロにはならんかったけど、本当に疲れました。</p><br><p>ありがとうございました。ﾉｼ</p><br>
]]>
</description>
<link>https://ameblo.jp/tenamonyamake/entry-10296660096.html</link>
<pubDate>Thu, 09 Jul 2009 21:31:48 +0900</pubDate>
</item>
<item>
<title>データベース抽象化レイヤ、どれにする？</title>
<description>
<![CDATA[ <p>データベース抽象化レイヤの選択を考える。</p><br><p>しっかし、データベース抽象化レイヤって名前は、人肌恋しくなるくらい無機質な名前やな。</p><br><p>要は、PHPとデータベース（今回はPostgresql）の間をとりもつツールの選択だ。</p><br><p>先日の記事では、テスト的に直接データベースを実行する形をとったんだけど、</p><p>やはり、使い勝手はツールを入れたほうがよさそう。</p><br><p>で、調べたら、結構種類あるね。</p><p>一覧にしてみる。</p><br><p>×PEAR::DB</p><p>　　古いらしい。却下する。</p><p>○PEAR::DB_DataObject</p><p>　　利用例もある。PEAR::DBの改良版か？</p><p>×PEAR::MDB</p><p>　　古いらしい。却下する。</p><p>○PEAR::MDB2</p><p>　　旬らしい。</p><p>　　処理速度は遅いが、PEAR::DBより早く。記述はある程度似ている。</p><p>○PDO</p><p>　　処理速度が速くて旬らしい。</p><p>　　PHP5.1から提供された。</p><p>？dbx</p><p>　　ネイティブよりだからか話題が少ない？</p><p>×各フレームワーク専用のもの</p><p>　　まだフレームワークまではいらない。直感的に地で処理を味わいたい。</p><br><br><p>参考文献（ありがとう(・ω・)/）</p><p><a href="http://www.thinkit.co.jp/free/marugoto/1/4/1/">http://www.thinkit.co.jp/free/marugoto/1/4/1/</a> </p><p><a href="http://yuubiseiharukana.blog.shinobi.jp/Entry/77/">http://yuubiseiharukana.blog.shinobi.jp/Entry/77/</a> </p><br><p>旬が多くてどれがええのん？</p><p>スピード好きからいえば、PDOか。そんなんでええのか？ｗ　いや大事だろ！</p>
]]>
</description>
<link>https://ameblo.jp/tenamonyamake/entry-10296653160.html</link>
<pubDate>Thu, 09 Jul 2009 21:08:22 +0900</pubDate>
</item>
<item>
<title>PHP環境へPEARとXDebugのインストール</title>
<description>
<![CDATA[ <p>少しWebシステムらしいものを作ってみる。<br>何事も段階は踏むつもりだけど。</p><br><p>ところで、ネットや書籍をみていると<br>PEAR（ペア）というPHPのライブラリ群を良く利用してる。</p><br><p>PEARはPHPが公式でサポートしているライブラリなので汎用性が高いはず。<br>知識をGetしても無駄にはなるまい。そんな感じなので導入する。</p><br><p>まず、PEARのインストールから。<br>他のLinuxディストリビューションだと、phpインストール時に<br>一緒に導入される場合もあるらしいけど、ubuntuでは導入されてない。</p><br><p>synapticから導入してみる。<br>検索で、php-pearを検索。ダブルクリックでマークして適用。<br>これでOK。</p><br><p>そして、今後影響あるかわからないけど、<br>興味本位で、<br>$ sudo pear upgrade-all<br>を実行してアップグレードしてみた。<br>PEAR-1.8.1.tgzが展開されて更新した模様。</p><br><br><p>あと、PHPのデバッグ情報が詳細になるライブラリXDebugをインストールします。<br>慣れたら、外せばいいと思うので開発効率を上げる方向でいく。</p><p>XDebugは、php-pearと、php5-devを利用するらしい。</p><p><br>以下のサイトから情報を得た。助かります。ありがとう。<br><a href="http://www.netbeans.org/kb/docs/php/configure-php-environment-ubuntu_ja.html">http://www.netbeans.org/kb/docs/php/configure-php-environment-ubuntu_ja.html</a> <br><a href="http://www.doyouphp.jp/tips/tips_xdebug.shtml">http://www.doyouphp.jp/tips/tips_xdebug.shtml</a> </p><br><p>synapticでphp5-devをインストールします。</p><br><p>で、XDebugをインストールします。<br>$ sudo pecl install xdebug<br>これは、synapticに登録されてないので、peclから呼ぶ。<br>peclはC言語で書かれたPHPライブラリということで、<br>インストール時にgccが動いてるね。</p><br><p>PHPのコンフィグファイル /etc/php5/apache2/php.ini　ファイルを編集します。<br>ファイルの最後に、以下追記。<br><font color="#800080">;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<br>; for Xdebug<br>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<br>extension="xdebug.so"</font></p><br><br><p>Apache2を再起動します。<br>$ sudo /etc/init.d/apache2 restart</p><br><p>さて、phpinfo()関数で見てみよう。<br></p><p>/var/www/info.php というファイル（中身が、&lt;?php phpinfo(); ?&gt;）を用意する。<br>ブラウザで<a href="http://localhost/info.php">http://localhost/info.php</a> 　にアクセスする。<br>下の方に、xdebugの欄がある。PHPがxdebugを認識したみたいです。<br></p><p>よし、OK！</p><p><br></p>
]]>
</description>
<link>https://ameblo.jp/tenamonyamake/entry-10296489468.html</link>
<pubDate>Thu, 09 Jul 2009 16:56:15 +0900</pubDate>
</item>
<item>
<title>UbuntuでPHPとProgresqlを結ぶ２ ちゃんと確認してみる</title>
<description>
<![CDATA[ <p>前回、PHPからPostgresqlにアクセスするphpファイルを記載したけど、</p><p>エラー時だけブラウザにエラーを表示していた。</p><br><p>成功しても何も表示されないもの、あれなんで、</p><p>テーブルデータを表示するよう、phpファイルを編集してみた。</p><br><p>これで、テーブルにアクセスしたって確認になるしね。</p><br><p><font color="#800080">&lt;?php<br>$con = pg_connect("dbname=testdb");<br>$query = "SELECT * FROM testtable";<br>if(!$con)<br>print("PostgreSQL connection error!\n");<br>else {<br>$phpversion = (float)phpversion();<br>if($phpversion&gt;=4.2) {<br>$result = pg_query($con, $query);<br>print("table data&lt;br /&gt;");<br>$rowcnt = pg_num_rows($result);<br>$colcnt = pg_num_fields($result);<br>for ($i=0; $i&lt;$rowcnt; $i++) {<br>for ($j=0; $j&lt;$colcnt; $j++) {<br>printf("%s: %s ", pg_field_name($result, $j),<br>pg_fetch_result($result, $i, $j));<br>}<br>print("&lt;br&gt;\n");<br>}<br>}<br>else<br>$result = pg_exec($con, $query);<br>pg_close($con);<br>}</font></p><p><font color="#800080">?&gt;<br></font></p><p><font color="#800080"><font color="#000000">これで、項目名とデータが表示される。</font></font></p><p><font color="#800080"><font color="#000000"><br></font></font></p><p>＜マルチバイトコードについて追記＞</p><p><font color="#800080"><font color="#000000"><br></font></font></p><p><font color="#800080"><font color="#000000">さて、あと、Webシステムでは度々おこるマルチバイトコードも確認してみる。</font></font></p><p><font color="#800080"><font color="#000000">簡単にいえば、日本語表示。</font></font></p><p><font color="#800080"><font color="#000000"><br></font></font></p><p><font color="#800080"><font color="#000000">Postgresqlにつくったテーブルを変えてみる。</font></font></p><p><font color="#800080"><font color="#000000"><br></font></font></p><p><font color="#800080"><font color="#000000">$ sudo su postgres</font></font></p><p><font color="#800080"><font color="#000000">で、ユーザを管理者にして。</font></font></p><p><font color="#800080"><font color="#000000"><br></font></font></p><p><font color="#000000">以前の記事で作ったテーブルを一旦消す。</font></p><p><font color="#000000">testdb=# drop table testtable;</font></p><p><font color="#000000"><br></font></p><p><font color="#000000">日本語を混ぜた構成を作る。</font></p><p><font color="#000000">testdb=# create table testtable (<br>testdb(# id integer,<br>testdb(# name varchar(256),<br>testdb(# メモ varchar(256)<br>testdb(# );</font></p><p><font color="#000000"><br></font></p><p><font color="#000000">データを2つほど入れてみる。<br>testdb=# insert into testtable values(0, 'あ', 'か');<br>testdb=# insert into testtable values(0, 'い', 'き');</font></p><p><font color="#000000"><br></font></p><p><font color="#000000">テーブルに、</font><font color="#000000">再度権限をwww-dataに当てる。</font></p><p><font color="#000000">grant all on testtable to "www-data";<br></font></p><p><font color="#000000">各ソフトウェアのデフォルトは、UTF-8のはずなので</font></p><p><font color="#000000">うまく日本語表示されるはず。表示OK。</font></p><p><font color="#000000"><br></font></p><p><font color="#000000">されなかったら、各設定が異なっているはず。ちとめんどいな。</font></p><p><font color="#000000">各ソフトのバージョンが少し違うからかも。</font></p><p><font color="#000000">列挙しておこう。</font></p><p><font color="#000000"><br></font></p><p><font color="#000000">$ cat /etc/lsb-release <br>DISTRIB_ID=Ubuntu<br>DISTRIB_RELEASE=8.04<br>DISTRIB_CODENAME=hardy<br>DISTRIB_DESCRIPTION="Ubuntu 8.04.2"<br></font></p><p><font color="#000000">$ uname -a<br>Linux ubuntu-vm 2.6.24-24-generic #1 SMP Wed Apr 15 15:54:25 UTC 2009 i686 GNU/Linux</font></p><p><font color="#000000"><br></font></p><p><font color="#000000">Apache2:</font></p><p><font color="#000000">$ apt-cache show apache2</font></p><p><font color="#000000">Version: 2.2.8-1ubuntu0.9</font></p><p><font color="#000000"><br></font></p><p><font color="#000000">Postgresql:</font></p><p><font color="#000000">$ sudo /etc/init.d/postgresql-8.3 -v<br>Usage: /etc/init.d/postgresql-8.3 </font></p><p><font color="#000000"><br></font></p><p><font color="#000000">PHP:</font></p><p><font color="#800080"><font color="#000000">$ php -v<br>PHP 5.2.4-2ubuntu5.6 with Suhosin-Patch 0.9.6.2 (cli) (built: Apr 17 2009 14:31:37) <br>Copyright (c) 1997-2007 The PHP Group<br>Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies<br></font></font></p>
]]>
</description>
<link>https://ameblo.jp/tenamonyamake/entry-10296486230.html</link>
<pubDate>Thu, 09 Jul 2009 16:43:17 +0900</pubDate>
</item>
<item>
<title>UbuntuでPHPとProgresqlを結ぶ</title>
<description>
<![CDATA[ <p>Ubuntu8.04で、PHPからPostgresql8.3を利用してみる。</p><br><p>インストールするものから、ざっと列挙。</p><br><p>インストールは、apt-get install なんちゃら　でもいいけど、</p><p>GUIで操作できるsynapticを使ってみよう。</p><br><p>１、Postgresqlをインストール</p><p>　　synapticでpostgresqlで検索して、”postgresql”をダブルクリックして、</p><p>　　　マークボタンを押下したら依存関係にもチェックがつく。</p><p>　　　適用ボタンでダウンロード＆インストールが自動で行われる。</p><br><p>２、apache2をインストール</p><p>　　apache2をダブルクリック。あとは１と同じ。</p><br><p>３、php5をインストール</p><p>　　php5をダブルクリック。あとは１と同じ。</p><br><p>４、php5-pgsqlをインストール</p><p>　　php5-pgsqlをダブルクリック。あとは１と同じ。</p><br><br><p>とりあえず、これで、ソフトは揃った。</p><br><p>最低限の設定と稼動チェックをしよう。</p><br><p>１、Postgresqlのチェック</p><br><p>　　さて、インストール後は稼動中だとおもうけど、以下で確実に稼動中にしておこう。</p><p>　　（稼働してないと、後述のpsqlが起動できないよ。）</p><p>　　$ sudo /etc/init.d/postgresql-8.3 restart</p><p>　　メモ：稼働してないと、後述のpsqlが起動できないよ。</p><p>　　　　　sudoコマンドは、postgresユーザにはadmin権限がないので使えまへん。</p><p>　　　　　　/etc/sudoers関連でsudo出来るようにできるらしいけど調べてません。</p><br><p>　　Postgresqlの管理ユーザのpostgresが作成されたか確認。</p><p>　　$ id postgres</p><p>　　そんなユーザいないよっていわれたら、インストール失敗してると思う。</p><p>　　uidとか表示されたら、postgresユーザはいる。</p><br><p>　　ログインするため、パスワード設定をする。</p><p>　　$ sudo passwd postgres</p><p>　　パスワードを2回入れて、確定する。</p><br><p>　　postgresユーザになる。</p><p>　　$ sudo su postgres</p><br><p>　　psqlを起動してみる。</p><p>　　$ psql -l</p><p>　　データベースのリストが表示される。３つほどあるね。</p><p>　　テスト用のデータベースを作成してみる。</p><p>　　$ createdb testdb　（消す時は、dropdb testdb）</p><br><p>　　あと、apache2のデフォルトユーザwww-dataさんからアクセスできるように、</p><p>　　www-dataというユーザをpostgresのユーザとしても登録してみましょ。</p><p>　　$ createuser www-data　（消す時は、dropuser）</p><p>　　で、３つ質問されるので、n、y、nで回答します。</p><p>　　質問は読めばいいけど、要は</p><p>　　管理者権限なし、データベースは作れる、ロール（権限）関与不可という設定です。</p><p>　　</p><p>　　psqlを使ってtestdbにアクセスしてみよう。</p><p>　　$ psql testdb</p><p>　　psqlのプロンプトが現れる。</p><p>　　</p><p>　　テスト用のテーブルを作成しよう。あまり打つのはいやだから、、</p><p>　　testdb=# create table testtable (id integer);</p><p>　　こんな感じで。psqlプロンプトは最後にセミコロンが大抵いるので注意。</p><br><p>　　テーブルの確認</p><p>　　testdb=# \d</p><p>　　testtableが表示されたはず。</p><br><p>　　テーブルにデータを入れてみよう。</p><p>　　testdb=# insert into testtable values(0);</p><p>　　testdb=# insert into testtable values(1);</p><p>　　こんなもんでOK。</p><br><p>　　データの確認。</p><p>　　testdb=# select * from testtable;</p><p>　　id列に、0とか表示されたはず。</p><br><p>　　作ったテーブルはこのままだと、www-dataユーザからアクセスできないので、</p><p>　　テーブルにロール（権限）の追加をします。</p><p>　　testdb=# grant all on testtable to "www-data";</p><p>　　普通ユーザ名に”で囲む必要はないけど、www-dataって「-」が中にあるから囲まないと怒られました。</p><br><p>　　ちなみに、allって全部の権限を与えてます。実際はどんなものなのかというと、</p><p>　　select, insert, update, delete, rule、、、、、などなど色々設定できる。</p><br><p>　　psqlプロンプトの終了は、</p><p>　　testdb=# \q</p><br><p>　　とりあえず、基本設定はOK。</p><br><p>２、apache2のチェック</p><p>　　とりあえず設定は、いじらん。</p><p>　　アパッチにアクセスしてみよう。</p><p>　　FireFoxでもなんでもブラウザから、以下にアクセス。It workって表示されたら稼働中。</p><p>　　<a href="http://localhost/">http://localhost/</a> 　　</p><p>　　稼働してないようだったら、</p><p>　　$ sudo /etc/init.d/apache2 restart</p><p>　　でもう一度チャレンジ。これでも動かないときは、ネットワーク設定??</p><br><p>３、php5のチェック</p><p>　　設定なし、チェックなし！</p><br><p>４、php5-pgsqlのチェック</p><p>　　実際にapacheからPHPがPostgresqlを認識しているか確認しますか。</p><br><p>　　その前にアパッチのドキュメントルートはデフォルトで/var/www/以下となっています。</p><p>　　つまり、<a href="http://localhost/ここのファイル　が">http://localhost/ここのファイル　が</a> 、/var/www/ここのファイルとなっています。</p><p>　　</p><p>　　では、phpを書いて確かめましょう。</p><p>　　$ cd /var/www/</p><p>　　ここに、phpinfo.phpファイルを作成します。</p><p>　　$ sudo gedit phpinfo.php　　とか好きなエディタで。</p><p>　　ファイルの中身は、次の一行です。</p><p>　　<font color="#800080">&lt;?php phpinfo(); ?&gt;</font></p><br><p>　　じゃあ、<a href="http://localhost/phpinfo.php">http://localhost/phpinfo.php</a> 　にアクセスします。</p><p>　　下の方にpostgresqlって文字が見えたらOKです。</p><p>　　見えなかったら、インストールの順序かな？　わからん。</p><p>　　php5-pgsqlを最後にインストールしました？</p><p>　　</p><p>　　それでは、phpからpostgresqlにアクセスしますか。testdb.phpファイルを作成します。</p><p>　　$ cd /var/www</p><p>　　$ sudo gedit testdb.php</p><p>　　ファイルの中身は、以下の感じで、testdb内のtesttableにアクセスします。</p><p>　　ただ、エラー時だけ文字を表示するので、真っ白画面なら成功です。</p><p>　　</p><p><font color="#800080">&lt;?php<br>$con = pg_connect("dbname=testdb");<br></font><font color="#800080">$query = "SELECT * FROM testtable";<br>if(!$con)<br>print("PostgreSQL connection error!\n");<br>else { <br>$phpversion = (float)phpversion();<br>if($phpversion&gt;=4.2)<br>$result = pg_query($con, $query);<br>else <br>$result = pg_exec($con, $query);<br>pg_close($con);<br>}</font></p><p><font color="#800080">?&gt;</font></p><p><font color="#800080"><br></font></p><p>ちなみに、アパッチのユーザwww-dataでPostgresqlにアクセスしてるので、</p><p>前述のcreateuserでPostgresqlのユーザとしてwww-dataを登録してなければ、</p><p>データベースに接続できません。2行目でエラーとなります。</p><br><p>また、前述のgrant all なんちゃらのテーブルへの権限付与がなければ、　パーミッションエラーとなります。</p><br><p>テスト的に動いたら、バンザイ！</p>
]]>
</description>
<link>https://ameblo.jp/tenamonyamake/entry-10294745289.html</link>
<pubDate>Mon, 06 Jul 2009 21:02:35 +0900</pubDate>
</item>
<item>
<title>ファイル復旧へのまとめ</title>
<description>
<![CDATA[ <p>以前、HDDのパーティションをいじりを失敗し、復旧に丸3日かかった時のメモ</p><br><p>結論、PC INSPECTORというフリーソフトのFIND LOGICAL DRIVES機能で助かりました。</p><p>（Windows上で動作するため、Windowsが起動するパーティションが１つ要ります。）</p><br><p>実際には、パーティションを壊したので、パーティションの区切りの調査からした。</p><br><p>testdisk、fdisk、パーティションマジック８で、調査しながら、パーティションを決定した。</p><p>区切りが分からない時は、２つのパーティションをまとめて１つのパーティションとして確定。</p><br><p>PC INSPECTORをメモする記事でした。</p><br><br>
]]>
</description>
<link>https://ameblo.jp/tenamonyamake/entry-10294029076.html</link>
<pubDate>Sun, 05 Jul 2009 21:42:16 +0900</pubDate>
</item>
<item>
<title>vi操作のメモ</title>
<description>
<![CDATA[ <p>久々にviエディタを利用することになった。</p><br><p>上下左右などは体が覚えてるが、色々忘れてたのでよく使う機能をメモしとこう。</p><br><p>単語切り取り：dw</p><p>単語コピー：yw</p><p>単語を入れ替える：cw と打ってから文字を打つ</p><p>貼り付け：p、カーソルの前に貼り付ける時はP</p><br><p>範囲選択：v押してからカーソル移動 </p><p>　ex)5文字範囲選択v4l（エル）　　カーソルを右に４つ動かしたから5文字分の選択。</p><p>　ex)5文字範囲選択しコピー：v4lｙ</p><br><p>上記の操作は名前なしバッファ（クリップボードのようなもん）に入る。</p><br><p>xとかで削除するたびに勝手にバッファを上書きされては、まともなコピペができないので、</p><p>名前付きバッファを利用する。</p><br><p>名前付きバッファは、aからzまでの26種。とりあえずaを使う。"aで指定する。</p><br><p>単語切り取り："adw</p><p>単語コピー："ayw</p><p>5文字範囲選択コピー：v4l"ay</p><br><p>バッファの中身を確認する：:di　　正式には:displayだそうだ。</p><br><p>検索：/検索文字列　（アルファベットの大小を区別する）</p><p>検索：/検索文字列\c（アルファベットの大小を区別しない）　まあスラッシュとバックスラッシュで囲んでcです。</p><p>次検索：n</p><p>前検索：N</p><br><p>これで、だいぶエディタとして便利になる。</p><p><br></p><p>あと、一般ユーザで書き込み権限のないテキストを編集してしまい、保存できなくなった場合。</p><p>どうしても書きたい！！って時がある。</p><p>ま、一般ユーザのホームディレクトリに別名で保存すればいいんだけども。</p><br><p>調べてみたらvi上で</p><p>:w !sudo tee %</p><p>とすれば、書き込めるらしい。試した。保存できる。</p><p>teeってlinuxコマンドなんやね。見たことなかったです。</p><p>%の意味がわからへん。怖くて使えん。^^;;;;</p><br>
]]>
</description>
<link>https://ameblo.jp/tenamonyamake/entry-10293961027.html</link>
<pubDate>Sun, 05 Jul 2009 20:05:39 +0900</pubDate>
</item>
<item>
<title>UbuntuとPostgresql8.3</title>
<description>
<![CDATA[ <p>Ubuntuに導入するPostgresqlは、ちょいと違うらしい。<br>ちまたの参考書の導入や設定が参考にならん。</p><br><p>Ubuntu以外のPostgresqlは、コミュニティ版といい、<br>Ubuntuのは、Ubuntu用にパッケージングされているのだ。</p><br><p>まあ、Let's Postgresサイトの受け売りです。<br><a href="http://lets.postgresql.jp/documents/tutorial/ubuntu">http://lets.postgresql.jp/documents/tutorial/ubuntu</a> </p><br><p>引用かつ追記＆整理してみたよ。</p><br><p>インストールと設定のまとめ。</p><br><p>１、Ubuntuのデスクトップの「システム」メニューから、<br>　「システム管理」＞「synapticなんとか」でPostgresqlをインストール。<br>　（検索して見つけて下さい。依存関係も勝手に入れてくれます。）</p><br><p>２、postgresユーザがインストール時に作成されるが、<br>　　パスワードが設定できてないので、suできません。<br>　　なので、パスワード設定します。<br>　　$ sudo passwd postgres<br>　　ちなみにメモ：<br>　　　　$ finger postgres<br>　　　　で、postgresユーザがいることがわかります。<br>　　　　$ sudo view /etc/passwd でもいることはわかります。</p><br><p>３、ユーザをpostgresにします。<br>　　$ su postgres<br>　　postgresユーザは、postgresqlの管理者なのでpsqlコマンドで色々できます。<br>　　メモ：postgresはpostgresqlの管理者なんだけど、OSの管理権限はありまへん。<br>　　　　　# id postgres　ってすると、adminグループに参加してないんですね。<br>　　　　　# sudo vi /etc/passwd なんて拒否られます。sudoできないです。<br>　　　　　拒否られた時に、/etc/sudoersって文字がでます。<br>　　　　　ここを編集したらええらしい。しませんが。</p><br><p>４、テスト的にデータベースを作ります。<br>　　$ createdb testdb<br>　　ちなみに、createdbというコマンドは、postgresqlのコマンドです。<br>　　postgresユーザの時にパスが通り、コマンド単体で実行できます。<br>　　余談だけど、<br>　　　　$ which createdb<br>　　　　なんてすると、場所がわかり、<br>　　　　$ file createdb<br>　　　　なんてすると、postgresql関連のパスへのシンボリックリンク<br>　　　　だなあと確認できます。</p><br><p>５、データベースにユーザを割り当てます。管理者postgresの乱用を避けるため。<br>　　postgresユーザで、データベース名を指定したpsqlコマンドを使用します。<br>　　$ psql testdb<br>　　これで、testdbを操作できるpsqlプロンプトが起動します。<br>　　ユーザを割り当てます。<br>　　testdb=# create role username with login;<br>　　（セミコロンを忘れずに。sqlはセミコロンが要るんです。）<br>　　psqlプロンプトを終了します。<br>　　testdb=# \q</p><br><p>６、postgresqlのコンフィグ編集します。<br>　　編集の前の必ずバックアップを。<br>　　$ cd /etc/postgresql/8.3/main/<br>　　$ sudo cp -p postgresql.conf postgresql.conf.org<br>　　編集開始します。<br>　　$ sudo vi /etc/postgresql/8.3/main/postgresql.conf<br></p><p>　　メモ：postgresql.confはpostgresが所有者なので、<br>　　　　　今postgresユーザだったら、sudo要らずで、<br>　　　　　$ vi /etc/postgresql/8.3/main/postgresql.conf<br>　　　　　やね。<br>　　メモ２：<br>　　　　　ちなみに、ディレクト名が、8.3とか、mainとかあるのは<br>　　　　　クラスターを分けるためだそうです。<br>　　　　　main稼動から保守稼動に切り替えるときとか、<br>　　　　　subというディレクトリを作ったりするらしい。なるほど。</p><br><p>　編集箇所は、ERROR REPORTING AND LOGGINGセクション内<br>　・log_destination パラメータ： 'stderr’ を指定します。<br>　・log_collector パラメータ： on に設定します。<br>　・log_directory パラメータ： 'pg_log' に設定します。<br>　　これはログを格納するディレクトリ名で、他の名前でも構いません。<br>　　/var/lib/psotgresql/8.3/main からの相対パス名で指定します。<br>　・log_filename パラメータ： 'postgresql-%Y-%m-%d_%H%M%S.log' を指定します。<br>　　%の次の文字は、ログファイルを生成した日付、時刻を埋め込むためのものです。<br>　・log_truncate_on_rotation パラメータ： off に設定し、<br>　　同じファイル名のログがあったらそれに追加して書き込むようにします。<br>　・log_rotation_age： 1d に設定します。<br>　　これで、毎日運転ログが別のファイルに書き出されるようになります。<br>　・log_rotation_size： 10MBに設定します。<br>　　これで、6.の設定にもかかわらずログファイルのサイズが10MBを超えると<br>　　新たなログファイルが作られるようになります。<br>　<br>　　メモ：<br>　　　編集に際しては、元の状態がわかるように、編集前の行はそのまま残しましょう。</p><br><p>７、ログファイルの場所を作る（ディレクトリ作成）<br>　/var/lib/psotgresql/8.3/mainの下に、pg_logというディレクトリを作成します。<br>　$ su postgres<br>　$ cd /var/lib/psotgresql/8.3/main<br>　$ mkdir pg_log<br>　確認します<br>　$ ls -lF<br>　詳細表示で、所有者、グループ、ディレクトリの確認です。</p><p>　メモ：</p><p>　　ちなみに、上のmainというディレクトリは、postgres所有で、権限がrwx, ---,---です。</p><p>　　他の所有者やグループではアクセスできまへん。</p><br><p>８、posgresqlの再起動<br>　コンフィグを変更したので、再起動します。<br>　$ sudo /etc/init.d/postgresql-8.3 restart<br>　ログが生成されるので、さっきのログの場所を見に行きます。<br>　postgresユーザの状態で<br>　$ cd /var/lib/psotgresql/8.3/main/pg_log<br>　$ ls<br>　で、ファイルが生まれてます。<br>　中を少しみましょう。<br>　$ tail postなんちゃら.log<br>　ふむふむ。</p><br><p>今回はこれくらい。<br>　</p><br>
]]>
</description>
<link>https://ameblo.jp/tenamonyamake/entry-10293941792.html</link>
<pubDate>Sun, 05 Jul 2009 20:01:15 +0900</pubDate>
</item>
</channel>
</rss>
