2017-01-07 9 views
0

Я пытаюсь скопировать данные с сервера Ubuntu 16.04 в базу данных Azure SQL. Кажется, лучший способ сделать это с помощью утилиты bcp, но я открыт для любых параметров.Ошибка сегментации с помощью bcp для подключения к базе данных Azure SQL на Ubuntu 16.04

Я выполнил инструкции на этой странице для установки утилиты bcp на Ubuntu 16.04, и все казалось, что все в порядке. (Обратите внимание, я не устанавливал весь сервер SQL, только MSSQL-инструменты, как описано по ссылке Не уверен, что это проблема.) https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools#ubuntu

При попытке скопировать данные с помощью следующей команды я получаю ошибка сегментации. На самом деле, я также получаю это при попытке создать файл формата или сделать что-нибудь действительно.

$> bcp bcptest in /home/data/bcptest.dat -d MyDB -U myusername -S myserver.database.windows.net -P mypassword -c 
Segmentation fault (core dumped) 

Изменение/удаление -c флаг не помогает. Я должен отметить, что если я ошибаюсь, пароль не аутентифицируется, поэтому я знаю, что это, по крайней мере, так далеко.

Единственное, что на самом деле работает для меня проверяет версию:

$> bcp -v 
BCP - Bulk Copy Program for Microsoft SQL Server. 
Copyright (C) Microsoft Corporation. All Rights Reserved. 
Version: 14.0.0001.246 

Для чего это стоит, я могу получить утилиту freebcp работать с одной и той же базе данных, но это дает мне ошибки, как это при копировании более нескольких десятков строк. Я полагаю, это для отдельной должности.

Msg 20004, Level 9 
Read from the server failed 

ответ

0

Я также получаю ошибку сегментации при использовании BCP на Ubuntu 16.04 (и Ubuntu 16.10 и Centos 7 при тестировании этих версий ОС, а).

Я также установил MSSQL-инструменты для Ubuntu 16.04, согласно этой ссылке https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools#ubuntu

новая версия msodbcsql (13.1.3.0-1) для Ubuntu 16.04 был выпущен, который исправляет эту проблему ошибки сегментации для меня ,

# To fix the bcp segmentation fault problem on my ubuntu 16.04 server I did this: 

$ sudo apt-get update 
$ apt list --upgradable 
Listing... Done 
... 
msodbcsql/xenial 13.1.3.0-1 amd64 [upgradable from: 13.1.1.0-1] 
... 
$ sudo apt-get install msodbcsql 

После обновления msodbcsql (13.1.3.0-1) разломы сегментации ушли

Тестирование:

$ bcp mytable out myfile.csv -c -t ';' -U myuser -P mypass -S myserver.database.secure.windows.net -d mydatabase 

# OK - no segmentation fault - data is bulk copied to outfile 

 Смежные вопросы

  • Нет связанных вопросов^_^