понедельник, 11 сентября 2017 г.

How to access MSSQL DB from Amazon Linux and to do a failover

To access MSSQL DB unixODBC is needed.
Amazon yum repo has unixODBC-2.2.14-14.el6.x86_64, but unixODBC-2.3.2 or more is needed.
unixODBC-2.3.2 and mssql-tools-14 could be found in official MS repo.


  • 1) Delete existing unixODBC (version is old, and mssql-tools can't use it)

sudo yum remove unixODBC*


  • 2) Download repo list

curl https://packages.microsoft.com/config/rhel/6/prod.repo > /etc/yum.repos.d/mssql-release.repo


  • 3) Install packages 

sudo ACCEPT_EULA=Y yum install msodbcsql-13.0.1.0-1 mssql-tools-14.0.2.0-1


  • 4) Not mandatory, but it may be used by mssql sensitive applications (zabbix-mysql for example, it uses unixODBC 2.2) 

sudo yum install unixODBC-utf16-devel


  • 5) Create symlinks for convenient usage

ln -sfn /opt/mssql-tools/bin/sqlcmd-13.0.1.0 /usr/bin/sqlcmd
ln -sfn /opt/mssql-tools/bin/bcp-13.0.1.0 /usr/bin/bcp


  • 6) To connect to DB use:
sqlcmd -S IP.IP.IP.IP,1433 -U 'USERNAME' -P 'PASSWORD'
  • 7) To execute something:
SELECT * FROM sys.databases
GO
  • 8) To run SQL in script (to do a failover in that case) :
/usr/bin/sqlcmd -S IP.IP.IP.IP,1433 -U 'USERNAME' -P 'PASSWORD' -Q "ALTER DATABASE ffmain SET PARTNER FAILOVER"

Комментариев нет:

Отправить комментарий

Bash: MySql backup (file per db), restore+ users and privileges

Backup Mysql DB (file per db) #!/bin/bash USER="root" databases=`mysql -u $USER -e "SHOW DATABASES;" | tr -d "|...