LoginSignup
3
9

More than 5 years have passed since last update.

CentOS 7にSqlServerをインストールする

Last updated at Posted at 2017-10-24

記事作成日:2017/10/24

必要に迫られて、CentOS 7にSQL Serverのインストールを行った。
(MySQLやPostgreSQLに比べると、SQL Serverの参考サイトは少ないな。。。何でだろう)

幾つかのサイトを参考にさせて頂いたが、
最新版は微妙にコマンドが変わっている様なので、記録しておく。
結局は、本家サイトを参照にした。
下記を一字一句違わずに(?)入力すればインストールできるはず。

最初にCentOSを起動する

起動してください。はい。

本体(mssql)のインストール

#sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
#sudo yum install -y mssql-server
#sudo /opt/mssql/bin/mssql-conf setup
    2:Developer (free, no production user rights)
    pass : ************
#systemctl status mssql-server

ポートを開く
#sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
#sudo firewall-cmd --reload
#firewall-cmd --list-all

https://docs.microsoft.com/ja-jp/sql/linux/quickstart-install-connect-red-hat
https://dev.classmethod.jp/server-side/db/get-started-sql-server-on-linux/

ツール(mssql-tools)のインストール

#sudo su
#curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo
#exit
#sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
#sudo yum install mssql-tools unixODBC-devel
    y
    YES
    YES
#sudo yum check-update
#sudo yum update mssql-tools

#echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
#echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
#source ~/.bashrc

ローカル接続

筆者の場合は、VM上にインストールしたので、
localhsotだと接続できななかった(それが原因かは分からないが)。
ipアドレスは、ifconfigで確認する。
ipは動的に変わる。

    #cd /root
    #ifconfig
    #sqlcmd -S 192.168.***.*** -U SA -P '<YourPassword>'

接続後

PASS変更

sqlcmd -S <host> -U <user> -P <current-password> -Z <new-password>

DB指定

use <database-name>;
go

DB一覧を表示する

select name from sys.databases;
go

DB作成

create database <database-name>;
go

DB削除

drop database <database-name>;
go

DB名変更

USE master;
GO
ALTER DATABASE DbNameBase
Modify Name = DbNameNew ;
GO

TBの一覧を表示する

select name from sysobjects where xtype = 'U';
go

TB作成

CREATE TABLE 表 ( 列1 データ型 制約 ,列2 データ型 制約 );
go

TB削除

DROP TABLE 表;
go

TB定義表示

sp_help テーブル名

PK定義表示

sp_pkeys @table_name = N'****';
go

追記
SQL Serverって、エンコードがややこしい。
UTF-8を使用する場合は、クオテーションの前にNを付けるって何?
N"moji"
クエリが変わってしまう(T T)

3
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
9