| 投稿者 | 
			投稿 | 
		
		
			| 
				
			 | 
			
				
				#1 2011 年 4 月 14 日(木) 14:43  
			 | 
		
		
			| 
				会員
				
				 登録者: 4 2011 
				返信数: 4 
				
			 | 
			
				 新規構築したLinuxサーバ(PHP組み込み済)にPHP関連モジュールを追加組み込みを行う方法を探しています。
  phpinfo関数でconfigureのパラメータを参照したところ、使用したいMySQLやPostgreSQLが組み込まれていませんでした。 (Linuxをデフォルト設定(関連モジュールを全部選択したつもりでしたが)) そこで、MySQLやPostgreSQLなど未だ組み込まれていない関連モジュールをこの状態から追加で組み込み出来ないか方法を探っています。
  ある人は、 「一旦PHP関連全部外し(Uninstall)、再コンパイル(configure,make,make install)しかない」 と言い、またある人は、 「必要なモジュールを後から追加できる。」 と言います。 どちらがいいのでしょうか。 私的には、全部外すのは非常に抵抗があり、また、システムに与える影響が相当大きいかと思い、後者の 「必要なモジュールを後から追加できる。」 を採りたいと思うのですが、方法はどのようにすればよいのでしょうか。
  また、一般論として、2人のアドバイスで、どちらが一般的な方法なのでしょうか。
  Linuxではrpmパッケージが普及して、インストールが手軽になった一方、ソースからコンパイルして組み込んだ場合、セキュリティアップデートなどが後から報告された場合、yumなどで対応できるのか、それも不安です。 
			 | 
		
		
			| 
				
			 | 
			
				
				#2 2011 年 4 月 14 日(木) 18:33  
			 | 
		
		
			| 
				会員
				
				 登録者: 8 2009 
				返信数: 103 
				
			 | 
			
				 肝心なLinuxのディストリビューション名がないのですが?
  パッケージ管理なLinuxは通常ソースから再構築したりしません。 モジュールはパッケージをインストールすることで追加できます。
  以下CentOS5.5 # yum search php パッケージのリストが表示されます。
  # yum install php-mysql php-pgsql モジュールを追加します。
 
  追加のモジュールがなかったらソースからになりますね。 
			 | 
		
		
			| 
				
			 | 
			
				
				#3 2011 年 4 月 15 日(金) 10:03  
			 | 
		
		
			| 
				会員
				
				 登録者: 4 2011 
				返信数: 4 
				
			 | 
			
				 >肝心なLinuxのディストリビューション名がないのですが?
  申し遅れてました、RHEL5.5です。
  >パッケージ管理なLinuxは通常ソースから再構築したりしません。 >モジュールはパッケージをインストールすることで追加できます。 > >以下CentOS5.5 ># yum search php >パッケージのリストが表示されます。 > ># yum install php-mysql php-pgsql >モジュールを追加します。
  yum list installed | grep php とすると、 php.x86_64                                  5.1.6-27.el5_5.3           installed ・・・・ php-mysql.x86_64                            5.1.6-27.el5_5.3           installed php-pgsql.x86_64                            5.1.6-27.el5_5.3           installed と php-mysql、php-pgsqlが既にインストール済みになっていました。 phpinfoの画面で、configureのオプションを参照すると、without mysqlオプションがあり、 pgsqlに関しては記述なしでした。
  インストールされているけどもう一度 ># yum install php-mysql php-pgsql でモジュールをインストールすればいいんでしょうか。 
			 | 
		
		
			| 
				
			 | 
			
				
				#4 2011 年 4 月 15 日(金) 10:43  
			 | 
		
		
			| 
				会員
				
				 登録者: 8 2009 
				返信数: 103 
				
			 | 
			
				 RHEL5.5ならCentOS5.5とほぼ同じですね。 私はx86でremiのパッケージに入れ替えてますけど。
  configureのオプションでwithout mysqlがあるのはphpのモジュールとしてあるからです。 見るべきところは「additional .ini files parsed」かな。
  phpinfo()で表示されたページをスクロールしてmysqlやpgsqlが表示されていれば組み込まれていますから 再度インストールする必要はありません。 
			 | 
		
		
			| 
				
			 | 
			
				
				#5 2011 年 4 月 15 日(金) 13:33  
			 | 
		
		
			| 
				会員
				
				 登録者: 4 2011 
				返信数: 4 
				
			 | 
			
				 ご回答ありがとうございます。 phpinfoの画面で、 >configureのオプションでwithout mysqlがあるのはphpのモジュールとしてあるからです。 pgsqlがないのは良いのでしょうか。
  「additional .ini files parsed」は   /etc/php.d/bcmath.ini, /etc/php.d/dba.ini, /etc/php.d/dbase.ini, /etc/php.d/dom.ini, /etc/php.d/gd.ini, /etc/php.d/imap.ini, /etc/php.d/ldap.ini, /etc/php.d/mbstring.ini, /etc/php.d/mysql.ini, /etc/php.d/mysqli.ini, /etc/php.d/ncurses.ini, /etc/php.d/odbc.ini, /etc/php.d/pdo.ini, /etc/php.d/pdo_mysql.ini, /etc/php.d/pdo_odbc.ini, /etc/php.d/pdo_pgsql.ini, /etc/php.d/pdo_sqlite.ini, /etc/php.d/pgsql.ini, /etc/php.d/snmp.ini, /etc/php.d/soap.ini, /etc/php.d/xmlreader.ini, /etc/php.d/xmlrpc.ini, /etc/php.d/xmlwriter.ini, /etc/php.d/xsl.ini   と、だーとかかれてますが、 /etc/php.d/mysql.ini, と /etc/php.d/pgsql.ini, が記されているということは、組み込み済み、PHPからMySQLやPostgreSQLへ接続が出来る環境である、 とういうことなのでしょうか。 本来なら「自分で試せ」といわれそうですが、サーバ構築とPHPアプリ構築の担当者が違うので、図々しいのを覚悟で質問します。 
			 | 
		
		
			| 
				
			 | 
			
				
				#6 2011 年 4 月 15 日(金) 14:02  
			 | 
		
		
			| 
				会員
				
				 登録者: 8 2009 
				返信数: 103 
				
			 | 
			
				 自宅のかと思ったら業務用でしたか。
  > pgsqlがないのは良いのでしょうか。 with指定してあればphpに組み込まれます。 パッケージ管理なのでphpのモジュールとして組み込むためにないのです。
  > サーバー構築とPHPアプリ構築の担当者が違うので、図々しいのを覚悟で質問します。  phpアプリ担当にちょっとスクリプト書いてもらえばいいだけのような。 mysqlやpostgresqlが稼働してなくても確認はできます。 あなたがサーバー構築担当なら/etc/php.d/mysql.iniや/etc/php.d/pgsql.iniに何が書いてあるのかみてください。 というか会社から教育とかしてもらってないのですか?
 
  # configureオプションの意味も知らない技術者さんがいることにびっくりです。 
			 | 
		
		
			| 
				
			 | 
			
				
				#7 2011 年 4 月 15 日(金) 14:38  
			 | 
		
		
			| 
				会員
				
				 登録者: 4 2011 
				返信数: 4 
				
			 | 
			
				 返信ありがとうございます。
  >自宅のかと思ったら業務用でしたか。 社内で利用するサーバにインストールOSからGUIでパッケージを選択してインストールし、 httpdデーモンを起動し、phpinfoを表示さえたら表示がうまくいったので、PHP自体は 組み込めたのかな、しかしMySQLは>PostgreSQLは?という疑問から質問した次第です。
  ソースから組み込むのも手ですが、GUIでモジュールを選択するだけ、という安易な方法を 取ったこと、仕組みを良く知らなかったことがそもそもの原因です。
  >> pgsqlがないのは良いのでしょうか。 >with指定してあればphpに組み込まれます。 >パッケージ管理なのでphpのモジュールとして組み込むためにないのです。 なるほど、そういうことですね。
  >> サーバー構築とPHPアプリ構築の担当者が違うので、図々しいのを覚悟で質問します。  >phpアプリ担当にちょっとスクリプト書いてもらえばいいだけのような。 >mysqlやpostgresqlが稼働してなくても確認はできます。 >あなたがサーバー構築担当なら/etc/php.d/mysql.iniや/etc/php.d/pgsql.iniに何が >書いてあるのかみてください。 >というか会社から教育とかしてもらってないのですか? ># configureオプションの意味も知らない技術者さんがいることにびっくりです。
  お恥ずかしい限りです。自己弁護も含めて、最近というか、ここ近年、会社は技術教育なる 類の投資はやってません。 私自身Linuxをかじりだしたのが2年ほど前(他の業務の合間を見つけて)です、わからないこと だらけで恥を覚悟で質問した次第です。
  しかし、なにはともあれ、愚問がクリアになりましたので、ありがとうございます。 
			 | 
		
		
			| 
				
			 | 
			
				
				#8 2011 年 4 月 15 日(金) 15:29  
			 | 
		
		
			| 
				会員
				
				 登録者: 8 2009 
				返信数: 103 
				
			 | 
			
				 そうでしたか。 会社から技術的な教育を受けられないのは大変ですね。 (業務の合間ではなかなかはかどらないと思いますし、そうそう時間取れるものでもないですし) 周りに誰かスキルのある人がいればいいのですが。
  (ソースから入れるのは勉強用であって稼働するサーバーに入れてはいけないです。 アップデートとか自前で全部するなら可ですけど大変です) 
			 | 
		
		
			| 
				
			 | 
			
				
				#9 2011 年 7 月 7 日(木) 14:59  
			 | 
		
		
			| 
				会員
				
				 登録者: 8 2009 
				返信数: 103 
				
			 | 
			
				
			 |