Channel creation fails in "Mirth connect" connected to an Azure DB - azure-sql-database

I have successfully connected "Mrth Connect 3.5" with an Azure DB. But when i try to create and save a channel i`m getting an internal server error as below from Mirth.
Below is the Mirth Connect Server Manager database settings and connection string. I`m confident that this connection string is correct as Mirth Connect Server Manager turns to orange in color when i try connect to the Azure DB using these settings. So what might be causing the error.
jdbc:jtds:sqlserver://**.database.windows.net;DatabaseName=**

I have tried the above method couple of times. I did not work for me either. The best way usually everyone prefers is to leave the default mirth settings as it is in the server manager, so your screen will look like below
Inside the Mirth you can create channels and from the channel you can establish the connection to the databases as you like. This method will definitely work. I have tried connecting mydatabase established in AWS server it was working for me. Make sure you open the default port of MSSQL (1433). In case you create a new user and assign the database your port number may change. In that case you this below query in SQL server
USE master GO xp_readerrorlog 0, 1, N’Server is listening on’ GO
To identify the port number in which the database is running, and open that specific port in your cloud system.
Follow this to learn more about the connection string and DB reader in Mirth https://hl7engine.wordpress.com/2017/08/21/mirth-db-reader/

Related

Cloud SlashDB VM can't connect with Azure SQL DB

I set up a SlashDB instance in Azure following the instructions here.
I set up an Azure DB which I can access just fine from SSMS using the server admin account. The DB server firewall seems to be properly connected to the SlashDB server vnet subnet's service endpoint.
When I let SlashDB compose the connection string based on host & DB names, I get this error:
Couldn't load model bromach_dev due to OperationalError. (pyodbc.OperationalError) ('08001', u'[08001] [unixODBC][FreeTDS][SQL Server]Unable to connect to data source (0) (SQLDriverConnect)') (Background on this error at: http://sqlalche.me/e/e3q8)
Connection Error (Default Connection String)
When I override the connection string with the ODBC connection string from the Azure Portal, I get this error instead:
Couldn't load model bromach_dev due to InterfaceError. (pyodbc.InterfaceError) ('IM002', u'[IM002] [unixODBC][Driver Manager]Data source name not found, and no default driver specified (0) (SQLDriverConnect)') (Background on this error at: http://sqlalche.me/e/rvf5)
Connection Error (Azure Connection String)
In this case, the connection string I am using is:
Driver={ODBC Driver 13 for SQL Server};Server=tcp:org-dev.database.windows.net,1433;Database=bromach_dev;Uid=serveradmin#org-dev;Pwd=****************;Encrypt=yes;TrustServerCertificate=no;Connection Timeout=30;
Ideas?
In order for SlashDB to connect there must be an open TCP/IP route from its virtual machine instance to the Azure SQL Server (sorry if I am stating the obvious).
Also, there must be a working DNS resolver on SlashDB instance so it can obtain the IP address for your database host as configured in the connection string.
DNS Fix -- NO LONGER REQUIRED --
Let's begin with the latter. The new SlashDB image had a bug, which is caused by a bug in the Azure's publishing process https://github.com/Azure/WALinuxAgent/issues/1151. We have already published a corrected image to the marketplace. The following workaround is no longer requried:
Log in to your SlashDB instance via SSH using credentials you set at when you launched the instance.
Issue the following command
sudo ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
Firewall settings (easy) -- START HERE --
Using Azure portal, navigate to your database resource and click on the "Set server firewall" button.
Check if "Allow access to Azure services" is switched on. In our testing, a SlashDB instance running in the same location as the database server (East US in our case) with this setting turned on connected without problems.
Firewall settings (safer)
Using the same Firewall settings panel as above, turn off the "Allow access to Azure services". Instead we will add a network route for your SlashDB instance to connect. It's preferable to do so using virtual network rules as follows.
Click on the "Add existing virtual network" button in the bottom portion of the screen. A side panel will open.
Fill in the required details, most important the name of the virtual network of your SlashDB instance (you can find that in its "Overview" page in Azure Portal). Click OK.
Hit "Save".
Database Connection in SlashDB
Open your SlashDB user interface in the browser, navigate to Configure/Databases and click the "edit" button next to your database connection.
There is no need do override the connection string. Your database connection configuration should look something like this:
Once that's done click Save, then Close. You should now be able to successfully connect.
If your Azure SQL DB is not a Managed Instance, the SlashDB VM could not connect to it.
And please ensure the Azure SQL Database server firewall is properly connected to the SlashDB server vnet subnet's service endpoint.
The instructions about SlashDB also provides two solutions about how to solve the failed connection:
In addition, I think you maybe you can read this link for a reference:Configure Azure VM to connect to an Azure SQL Database Managed Instance
I hope this can helps you.

Not able to connect to local SQL Server 2008

I have just recently downloaded and installed SQL Server 2008 on my laptop. I want to login using my local details.
I tried like this in my image below
but I get this error:
Kindly let me know how to connect it as I am new for doing first time installation.
There are many reasons..few listed below
Instance name may be incorrect..So try searching for all the available instances ..when you are connecting from local ,you can check that easily by try clicking on server name drop down and browse for more and clicking database engines
Once instance name is correct, you can try checking if SQL Server services are running by opening configuration manager
If SQL Server is running , you may want to check if network protocols are enabled in same configuration manager
One more reason could be SQL Server browser service not running..this helps you to connect to right instance when you have multiple instances running on same box and you don't specify port number while connecting
Do the following to troubleshoot:
Go into sql server connection manager and check if sql server services is running. If it is not running then start it.
If it is running, right click it and open it.
Copy name of instance from and paste that name in management studio connection window.
If you still get error try connecting it with ‘.’ In server name in ssms connection window.
If its still not working, go in sql server connection manager and check protocols. Check if named pipe protocol is enabled. If not enabled, enable named pipe protocol.
If you follow above steps you should fix the error you are getting.

How to connect to sql server database via LAN

want to connect to a database on another PC connected via LAN. I am able to use the sql server db with string like C:\Users... but i cannot connect using string like (\\Server\c\user...) I tried to move the db file to My Documents, still i get this error.
I get the following error message: An attempt to attach an auto-names database for file (\\SERVER\Users\Jeswills\Documents\TBSDB.mdf) failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share
I hope i asked the question correctly
As database does not support the '\SERVER\c...' parameters, i had to attach the database, after enabling TCP/IP and SQL Browser, i had to create a login through security and add it to the attached database file because authentication must be SQL not windows. And i also gave read/write privileges to the account. Then on the child system, i confirmed connection to the account through SSMS with the login connecting to SERVER (which is the remote computer's name).
Note: you must be able to ping the remote systems and SQL Server Express R2 installed. I tried with SQL Server Express but did not get a head way. www.connectionstrings.com/sql-server-2008 for more connection string
Then i used this connection string to connect remotely, making integrated security and user instance = false unlike if i were connecting locally.
Data Source=SERVER\SQLEXPRESS,1433;Database=DATABASEFILE.MDF;Integrated Security=False;Network Library=dbmssocn;Connect Timeout=30;User Instance=False;user='USERNAME';password='PASSWORD'
Not sure what specifically you’re trying to do here but I guess it’s one of these two.
Option 1
Attach database stored on remote shared drive to a local SQL Server
Note that this is only possible starting in SQL Server 2008 R2. If you’re running SQL Server 2008 this is not an option.
Check this for more details
http://blogs.msdn.com/b/varund/archive/2010/09/02/create-a-sql-server-database-on-a-network-shared-drive.aspx
Option 2
Connect to remote SQL Server instance from local computer
If that database is already attached to SQL Server instance that runs on the same machine then it’s much better to just connect to that instance from SSMS than trying to attach database from remote storage.
To do this you need to enable TCP/IP protocol in SQL Server Configuration Manager. It’s under SQL Server Network configuration node. Make sure you enable TCP/IP and also set enable the IP address for listening (this is under TCP/IP properties).
Apart from this you’ll want to enable remote connections on your remote instance. This is done from SSMS -> instance properties -> Connection tab
When this is done you should be able to connect to remote instance from local SSMS by typing in IPaddress/instance name. For example 192.168.0.125/{instance_name} or only IP address if this is default instance.

Cannot connect to Azure SQL database, even with whitelisted IP

I am currently unable to connect to my Azure SQL database from a separate remote standalone dedicated box in a private datacenter.
I have an Azure SQL database where I manage the list of IP addresses that can connect to this database. This has worked perfectly until now. I have recently set-up a new dedicated box in a private datacenter that needs to query the Azure SQL database at regular 5 second intervals, give or take.
The problem is, this dedicated box cannot establish a connection to the Azure SQL database, despite being able to connect to other remote FTP servers, MySQL servers, etc. The Azure SQL database does have the IP address of the dedicated box on the allowed connection list. Furthermore, I temporarily opened up a massive range of allowed IP addresses (0.0.0.0 -> 255.255.255.255) on the Azure SQL database to see whether this inability to connect may have resulted from IP blocking.
Does anyone have any suggestions or thoughts on what might be causing this and how I could begin debugging the situation better?
To clarify: I can connect to the Azure SQL database from laptops with individual IP addresses in my office and elsewhere, so long as they have been added to the database whitelist; I can make outward connections to remote FTP and MySQL servers from the dedicated box; I have tried to open-up a massive range of allowed IP addresses on Azure SQL with no luck.
Edit
C:\Users\graphite.rack.ID17157>osql -S v7o06blktw.database.windows.net -U XXXXXXX#v7o06blktw -P XXXXXXX
[SQL Server Native Client 11.0] Named Pipes Provider: Could not open a
connection to SQL Server [53].
[SQL Server Native Client 11.0] Login timeout expired
[SQL Server Native Client 11.0] A network-related or instance-specific error
has occurred while establishing a connection to SQL Server. Server is not
found or not accessible. Check if instance name is correct and if SQL Server
is configured to allow remote connections. For more information see SQL Server
Books Online.
To summarize.
Windows Azure SQL Database (formerly known as SQL Azure) works exclusively and only on TCP port 1433. It only support SQL Server Authentication, TCP connection and TDS protocol as of today.
In order to successfully establish connection to SQL Azure one must fulfil the following requirements:
Create SQL Azure server & Database
Setup SQL Azure Server's firewall rules to accept connections from the IP address of application that will connect to that server
Make sure the box (be it Virtual, or home, or whatever) has no blocking outbound TCP port 1433
Explicitly force encryption in connection string
Explicitly chose to not trust server certificate in connection string
Please note that many (if not all) ISPs (Internet Service Providers) and Hosters, as well as IT staff within companies DO block outgoing TCP Port 1433 due to the SQL Slammer worm. This outgoing port blocking appears to be one of the most faced issues of newcommers to SQL Azure.
UPDATE Nov. 2015
As of August 2015, there is preview feature that enables you to use Azure AD to authenticate to Azure SQL Database. You can read more on this new preview feature here: https://azure.microsoft.com/en-us/documentation/articles/sql-database-aad-authentication/
If you're using corporate network for internet access and facing this problem,
a simple way around this is to use your phone's mobile hotspot for internet access instead.
Be sure to disable your ethernet connection too, which may also be connected to the internet.
Spent hours on this issue. The fix for me was finally found to be my setting on the Xfinity firewall. I had it set to high. Once I changed the setting to low security, I could connect to the Azure sql database with no issues.

Connection string for a remote SQL server

I am trying to connect to a remote SQL server. I would like to know the proper way to connect to the server. TCP/IP protocol is enabled. I am trying this way:
#"Server=myserver.com\SQLEXPRESS; Database=mydatabase; User ID=user; password=pass"
I am using myserver.com to connect to the server via RDP and I can connect without any problems, but when I am using the combination above to connect
to the SQL server via my code, it says that the server can't be found or does not exist.
Am I doing something wrong?
May I introduce you to http://www.connectionstrings.com whenever I have to manually create a connection string that's my first port of call. I can tell you right now that you can't do SQLExpress from a remote client (at least not the last time I checked). But here is the page for SQL Server connection strings. If it works, then it'll be there
Edit
It looks like you can connect remotely. It's just not configured that way out of the box