オフィス菜のブログ

SQL Server の復活-Ubuntu編

良からぬことをしました

2021年09月16日 に SQL Serverを設定しました-Ubuntu編 を新規投稿しました。
その後、DBeaver Community (21.2.5) や Azure Data Studio (1.32.0) などを利用して既存データの再利用の際、どこでどうしたのか分かりませんが、データベースが接続されず、更に、端末にて sqlcmd でも接続されなくなりました。
多分、DBeaver Community にて、[データベース] – [新しい接続] にて、SQL Server を選択時、変なドライバーを選択したと思います。

本来なら、設定した SQL Server に関する内容を全て、破棄し、再設定すべきと思いましたが、どのようなものが設定されたか分からないため、自動復旧を試み、それとなく再設定できたので、備忘録的に投稿します。

今回、コリたことですが、SQL Server のパスワード設定時、何かしらの特殊文字も含めたほうが良さそうです。

 

「自動実行インストール」なるものを見つけた

OS が、Linux にて、自動実行インストール なるものを見つけました。
この記事をみると、mssql-conf setup の実行時、環境変数を設定し、-n (プロンプトなし) オプションを使用し、設定する SQL Server のエディションとパスワードを再度、記載すれば、良さそうです。
尚、sudo systemctl stop mssql-server にて、SQL Server サービスを停止してから行うと良さそうです。
具体的な記載例を紹介します。(mssql-server のサービスは停止の状態です。)

Developer エディション
sudo MSSQL_PID=Developer ACCEPT_EULA=Y MSSQL_SA_PASSWORD=’‘ /opt/mssql/bin/mssql-conf -n setup
Express エディション
sudo MSSQL_PID=Express ACCEPT_EULA=Y MSSQL_SA_PASSWORD=’‘ /opt/mssql/bin/mssql-conf -n setup

つまり、MSSQL_PID の部分に、SQL Server のエディションを記載し、PASSWORD=’‘の部分に、パスワードを記載します。
但し、このパスワードの部分は、< と > は記載せず、パスワードを ‘ で括ります。

再設定後の端末の表示

このようにして、敗者復活させた SQL Server にて、端末を利用して (sqlcmd コマンドと思いますが) SQL Server の具体的な表示を紹介します。

インストールされている SQL Server のバージョン

UserName@PCName:~$ sqlcmd -S localhost -U SA -Q 'select @@VERSION'
Password: 
----------------------------------
----------------------------------
Microsoft SQL Server 2019 (RTM-CU14) (KB5007182) - 15.0.4188.2 (X64) 
	Nov  3 2021 19:19:51 
	Copyright (C) 2019 Microsoft Corporation
	Express Edition (64-bit) on Linux (Ubuntu 20.04.3 LTS)                                                                                                         

(1 rows affected)
UserName@PCName:~$ 

サーバーにあるデータベースの一覧

UserName@PCName:~$ sqlcmd -S localhost -U SA
Password: 
1> select name from sys.Databases
2> go
name
----------------------------------
master
tempdb
model
msdb
既存のデータベース-その1
既存のデータベース-その2
(6 rows affected)
1> 
デル株式会社

この投稿の改定履歴

このページには、各種広告も掲示しています。
掲示した広告、及び、スタイルの変更については、履歴を記載しません。

2021年11月23日
新規投稿
−以 上−

, ,

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください