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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

Q&A

解決済

4回答

9516閲覧

ラズベリーパイ3のUbuntuMATE16.04でmsodbcsqlが見つからない

GOYOSHI

総合スコア18

Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

0グッド

0クリップ

投稿2017/03/29 06:01

お世話になります。
ラズベリーパイ3からMSSQLServerに接続する必要があったのでUbuntuをインストールしました。
https://msdn.microsoft.com/en-us/library/hh568454(v=sql.110).aspx
を参考にしてSQLserver用のODBCドライバーをインストールしようとしました。

sudo su curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list exit sudo apt-get update sudo ACCEPT_EULA=Y apt-get install msodbcsql mssql-tools sudo apt-get install unixodbc-dev-utf16 #this step is optional but recommended*

下から二行目をターミナルで実行すると『E: パッケージ msodbcsqlが見つかりません』、
『E: パッケージ mssql-toolsが見つかりません』と表示されてインストールできません。

sudo apt-get updateの段階で
『ヒット:3 https://packages.microsoft.com/ubuntu/16.04/prod xenial InRelease』と表示されるので
パッケージの場所は特定されていると思いますし、ブラウザに該当アドレスを直打ちでもフォルダーが
表示されているので存在していると思いますが、なぜ見つかりませんとなるのかわかりません。

ちなみに以下も参考してみ見たのですが変わりませんでした。
http://qiita.com/kon_yu/items/8ac350f3951f8534c931

お手数をおかけいたしますがよろしくお願いいたします。

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

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

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

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

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

guest

回答4

0

odbc.iniも/etcにあります。
ですのでsudo nano /etc/odbc.iniとなります。
訂正させていただきます。

投稿2017/03/30 03:27

GOYOSHI

総合スコア18

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

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

0

役に立つ方もいるやもしれませんのでFreeTDSを使用したMSSQLserverへの接続手順を忘備録として投稿させていただきます。

マイクロソフトのドライバーを使用するためにUbuntuをインストールしましたが、できないとわかったので普通のRaspbianに戻しての設定となります。多分Ubuntuでも大丈夫だと思います。

まずFreeTDSとunixodbcをターミナルからインストールします。
sudo apt-get update
sudo apt-get install unixodbc unixodbc-dev freetds-dev tdsodbc

/etc/freetds/freetds.confの編集
(ルート権限なのでターミナルからnanoを使用しました。)
sudo nano /etc/freetds/freetds.conf

#A typical microsoft server [sqlserver](任意の名前) host = サーバーのIPアドレス port = 1433(ご自身の環境に合わせてください。) tds version = 8.0 client charset = UTF-8

ドライバー(libtdsodbc.so)の場所を確認(結構探しました。)
ラズベリーパイの場合、/usr/lib/arm-linux-gnueabihf/odbcにあるようです。

odbcinst.iniとodbc.iniの編集
sudo nano /etc/odbcinst.ini

[FreeTDS] Description = FreeTDS Driver(任意でよいと思う) Driver = /usr/lib/arm-linux-gnueabihf/odbc/libtdsodbc.so Setup = /usr/lib/arm-linux-gnueabihf/odbc/libtdsodbc.so (タイムアウトなどの設定もここに書くようです)

sudo nano odbc.ini

[sqlserver] Servername = sqlserver(freetds.confで指定した名前) Driver = FreeTDS(odbcinst.iniで指定した名前) Database = ご自身のデータベース名

とりあえずリブートしてターミナルから以下を入力
(ググるとtsqlを使用と書いてあるとこともあるが『コマンドがみつかりません』となりましたのでisqlを使用しました。)
isql sqlserver ユーザー名 パスワード
で『connected!』と表示されれば接続できています。

以後、pythonを使用するつもりですのでを実行しました。
sudo pip install pyodbc

ちゃんと使うためにはもう少し細かい設定が必要かもしれません。
とりあえず接続ができるとというところまでです。

投稿2017/03/30 03:10

GOYOSHI

総合スコア18

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

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

0

ベストアンサー

https://packages.microsoft.com/config/ubuntu/16.04/prod.listを中身を見ると、

deb [arch=amd64] https://packages.microsoft.com/ubuntu/16.04/prod xenial main

となっているので、amd64以外のアーキテクチャに対応してないのかもしれません。

投稿2017/03/29 07:17

mt08

総合スコア1825

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

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

GOYOSHI

2017/03/29 23:30

お世話様です。 私も/etc/apt/sources.list.dにあるファイルの中身を覗いてみてamdとあるので??とは思っていました。 やっぱり現状ではラズパイでは使えないということかなとおもいますので、FreeTDSを使用する方向で検討したいと思います。ありがとうございました。
guest

0

参考にしている英語サイトと日本語サイトで少しインストール手順が違うようです。
一度こちらを試してみてはいかがでしょうか。

投稿2017/03/29 06:09

KaiShoya

総合スコア551

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問