Cannot connect to MySQL on local server - c#

I have recently installed MySQL on our local server, and I am attempting to connect to it using this connection string:
mySqlConnectionString = "server=192.168.1.254;database=dcim;uid=root;pwd=LlmD62jL;";
I have also tried adding the port as well:
mySqlConnectionString = "server=192.168.1.254:3306;database=dcim;uid=root;pwd=LlmD62jL;";
But I still keep getting the MySqlException:
1042 - Unable to connect to any of the specified MySQL Hosts.
I have tried with the Firewall active and de-activated, but nothing has worked so far. What's going on?
EDIT: I thought I should note that I used this connection string to connect to MySQL on the same machine, with no problems using localhost or 127.0.0.1.
NB: This is MySQL Server with .NET Framework connection.

First check mysql server is working or not.
Try to add port number of mysql in connection string(The port 3306 is the default MySql port).
Check spacing and Order of parameters in connection string.(Sometimes it matters base on my experience",) )
Here's the basic format you could follow:
Server=ServerAddress; Port=1234; Database=DataBase; Uid=Username; Pwd=Password;
Also try to read this article its useful for connection strings. MySQL connection strings
Hope it helps. ",)

Related

MySql and C#: No connection could be made because the target machine actively refused it 127.0.0.1:3306

I have been trying to connect to MySql Database and I keep having this error:
SocketException: No connection could be made because the target
machine actively refused it 127.0.0.1:3306
C#
MySqlConnection connection = new MySqlConnection("server=localhost;user=MyUsername;database=Mydatabase;port=3306;password=MyPassword;");
I tried to check if the problem is with my connection string but I tested more than 10 different formats and I keep getting this error.
what is weird is that I have a website and I use PHP to connect to the database and it works great without any errors.
PHP
$conn = new mysqli("localhost:3306", "MyUsername", "MyPassword", "MyDataBase");
Can you try adding the following and seeing if it helps?
TrustServerCertificate=True;Trusted_Connection=False;Encrypt=True;'
I got this error because MySQL server was not running on Windows 11.
So to start the service go to => Services => MySQL80 and press "Start the service"
Also make sure the SSL connection is possible between the Server and Client.

ODBC Driver ignores port parameters for SQL Anywhere 10

I'm trying to connect to a SQL Anywhere 10 database using an ODBC connection in C#. This connects fine with all the default parameters, but whenever I try to specify a port or IP address, it looks like it's completely ignored
My connection string is:
Driver={SQL Anywhere 10};uid=username;pwd=password;
Which works when connecting to the first database listed. I want to connect to the second database running on the computer, which is on a different port. I have tried:
Driver={SQL Anywhere 10};uid=username;pwd=password;port=1234;
Driver={SQL Anywhere 10};uid=username;pwd=password;LINKs=tcpip(host=192.168.1.1:1234)
Driver={SQL Anywhere 10};uid=username;pwd=password;DataSource=localhost:1234;
None of these have changed the connection at all, or even failed to connect
What is the correct string to use to specify port?
Or what other method can I use other than a System.Data.ODBC.ODBCConnection to connect where I can specify a port?
It looks like you're just making up connection attributes to try in the string...
Try looking at documentation for the driver you're using --
Driver={SQL Anywhere 10};UID=<user name>;DatabaseName=<database name>;EngineName=<database engine name>;AutoStop=YES;Integrated=NO;EncryptedPassword=3ff6c3114e;Debug=NO;DisableMultiRowFetch=NO;CommLinks='TCPIP{HOST=<database server name>;PORT=<port number for remote connections>}';Compress=NO
Most of those attributes are optional, so here's a reduced string that may work for you --
Driver={SQL Anywhere 10};UID=username;PWD=password;CommLinks='TCPIP{HOST=localhost;PORT=1234}'

SQL Server problems to connect

I am developing a program with C# and WPF. I want the data to be stored in an SQL Server database. I made a connection string with the instance name in my PC, and that worked. But when I want to connect through the Internet with an IP address, I get some errors:
A network-related or instance-specific error occurred while
establishing a connection to SQL Server. The server was not found or
was not accessible Verify that the instance name is correct and that
SQL Server is configured to allow remote connections. (TCP Provider,
error 0 - No connection could be made because the target machine
actively refused it.)
I enabled TCP/IP, allowed remote connection in SQL Configuration Manager, opened a port of 1433 in my firewall, but still I am getting this error.
My connection string is this:
String connString = #"Network Library=dbmssocn;
Network Address=127.0.0.1,1433;
Integrated security=SSPI;
Initial Catalog=db";
SqlConnection conn = new SqlConnection(connString);
conn.Open( );
Where is my mistake?
There is very slight error in your connection string and honestly I can't blame you for that as it is very weird way in which SQL Sever is behaving. I'm not sure if this error lies in connection provider side or SQL Server instance side. Name of Network Library that your application is using to connect to the SQL Server using dbmssocn(Win32 Winsock TCP/IP) should always be mentioned in capital letters. Though I didn't see any relevant MSDN documentation from MS to support my statement but it actually worked when I did so. Here is the connection string that you should be using to fix the error.
String connString = #"Network Library=DBMSSOCN;
Network Address=127.0.0.1,1433;
Integrated security=SSPI;
Initial Catalog=db";
Seriously, I got freaked out in reproducing your issue as instead of copying the connection string from your question I copied it from some other blog :). But all is well that ends well. I've also assumed that a database named "db" actually exists on the default (NOT named instance) instance of the sql server you are connecting to when typing this answer. If changing the casing of network library name in connection string doesn't help then double check that database "db" must exist for a sql server default instance to which you are connecting to. In case you are using a named instance of sql server in your installation then that instance name should also come in the connection string.
Configure your SQL Server to allow TCP/IP connections. Go to SQL Server Configuration Manager -> network then protocols for your SQL Server named instance -> TCP/IP.
See this image!

How can connect MySql Online Database to C# desktop application

I am creating desktop application in c# but i wont to use Online Database created in mysql.
String mysqlConnectionString = "Server=216.14.120.105;Database=xxx_keys;UID=xxx_root;Password=xxx;Port=3306";
MySqlConnection connection = new MySqlConnection(mysqlConnectionString);
connection.Open();
this is the code i am using but i got an error unable to access host.
where i am wrong and if you have any proper code or details then give me.
If this is a MySQL database in local server user "localhost" for server IP as georgi-it also told. But if this is an external database first try to open a telnet connection on dos-prompt to see if there is some firewall block or something like that:
telnet 216.14.120.105 3306
if you don't get an error message and see a blank page then it means you can reach mysql server

Data source for connection string

What connection string should I use if SSMS connects to it using simply machine name, without instance name?
I mean it connects using the following string: PCName
I used to connect using PCName/SQLExpress. I cannot set correct connection string in my app in order to connect app to database on this machine.
How can I check what data source I should use? I've checked in Sql Server configuration that server instance named as SQLEXPRESS.
So I tried data source as:
.\SQLEXPRESS
PCName\SQLEXPRESS
.
I'm trying to connect to a service-based database, located in my app folder. So I'm using the following connection string:
data source=PCName;attachdbfilename=|DataDirectory|\spareparts.mdf;integrated security=true;user instance=true;multipleactiveresultsets=true;App=EntityFramework;
If SSMS connects via PCName then your application should be able to use Data Source=PCName. However it depends on whether your application is on the same machine as SSMS or not. If on a different machine it might not be able to connect for a variety of reasons. We can't speculate what the problem might be if all you do to describe the issue is "It won't connect" - what does that mean? Do you get an error message? If so, what is it? Make sure:
SQL Browser service is started
TCP/IP is enabled
Add Network=DBMSSOCN; to the connection string
You've also tried the IP address in addition to PCName
Firewall isn't blocking the SQL Server port

Categories

Resources