質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

Azure

Azureは、マイクロソフトのクラウド プラットフォームで、旧称は Windows Azureです。PaaSとIaaSを組み合わせることで、 コンピューティング・ストレージ・データ・ネットワーキング・アプリケーションなど多くの機能を持ちます。

Q&A

解決済

3回答

3176閲覧

CentOS CakePHP で Azure SQLDatabaseへの接続方法

SATURDAY2020

総合スコア12

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

Azure

Azureは、マイクロソフトのクラウド プラットフォームで、旧称は Windows Azureです。PaaSとIaaSを組み合わせることで、 コンピューティング・ストレージ・データ・ネットワーキング・アプリケーションなど多くの機能を持ちます。

0グッド

0クリップ

投稿2016/11/01 06:53

編集2016/11/01 08:15

###前提・実現したいこと
Azure SQLDatabaseをCentOS上のCakePHPで使用したい。
社内システムでAzure SQLDatabaseを使用する為に、CentOS上のWebシステムからもAzure SQLDatabaseを使用したい。

###発生している問題・エラーメッセージ

Database driver Cake\Database\Driver\Sqlserver cannot be used due to a missing PHP extension or unmet dependency ⟩ Cake\Database\Connection->driver CORE/src/Database/Connection.php, line 108 ⟩ Cake\Database\Connection->__construct CORE/src/Datasource/ConnectionRegistry.php, line 89 ⟩ Cake\Datasource\ConnectionRegistry->_create CORE/src/Core/ObjectRegistry.php, line 93 ⟩ Cake\Core\ObjectRegistry->load CORE/src/Datasource/ConnectionManager.php, line 205 …

###該当のソースコード

\config\app.php 'Datasources' => [ 'default' => [ 'className' => 'Cake\Database\Connection', 'driver' => 'Cake\Database\Driver\Sqlserver', 'persistent' => false, 'host' => '***.database.windows.net', /** * CakePHP will use the default DB port based on the driver selected * MySQL on MAMP uses port 8889, MAMP users will want to uncomment * the following line and set the port accordingly */ //'port' => 'non_standard_port_number', 'username' => '*****', 'password' => '*****', 'database' => '*****', 'encoding' => 'utf8', 'timezone' => 'Asia/Tokyo', 'flags' => [], 'cacheMetadata' => true, 'log' => false,

###試したこと
CentOSからtsqlコマンドでAzure SQLDatabaseへの接続は確認できています。
また、CentOSにMySQLをインストールして、そちらに接続した場合はCakePHPから正常に接続される事は確認しました。(driverはMysqlを指定)
CakePHPからAzure SQLDatabaseへの接続ができずに上記のエラーが発生しています。

###補足情報(言語/FW/ツール等のバージョンなど)
CentOS 6.5
Apache 2.4.20
PHP 5.6.4
CakePHP 3.3.5
Azure SQLDatabase V12

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

この組み合わせでの構築は諦めました。

投稿2016/11/09 06:03

SATURDAY2020

総合スコア12

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

私の経験で(SQL AzureではなくSQL Serverですが同じようなもんなので) #すみません環境記載されてましたね。
OS: CnetOS6.3, 6.4, RHEL6.3, 6.4

以下を四苦八苦しながら設定し開通
FreeTDS + unixODBC + pdo_odbc

#FreeTDS + pdo_dblib とかでも動作している人もいるみたい。

追記:
https://github.com/cakephp/cakephp/issues/9038#issuecomment-228659478

The Microsoft Sqlserver extension only works on Windows currently.

との事で Cake\Database\Driver\Sqlserver はWindowsのみの対応のようです。

投稿2016/11/01 07:31

編集2016/11/01 09:31
Y.H.

総合スコア7914

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SATURDAY2020

2016/11/01 07:55 編集

回答ありがとうございます。 CentOS等ツールのバージョンは、"補足情報"に記載しています。 FreeTDS等は四苦八苦してる最中にインストールしてありました。("試したこと"に追記しました。) 設定がおかしいor足りないのだと思いますが、どこがいけないのかが解りません。
guest

0

php.iniで以下が有効になっているか確認してみてください。

extension=php_pdo_sqlsrv.dll extension=php_sqlsrv.dll

投稿2016/11/01 07:09

mhashi

総合スコア408

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Y.H.

2016/11/01 07:32

OSがCentOSだからこれらは利用できないですよ。
SATURDAY2020

2016/11/01 07:33

回答ありがとうございます。 OSがWindowsではなくCentOSの為、dllは存在していません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問