To connect with a client program to a MySQL server that is listening to different network interfaces from those compiled into your client, you can use one of the following methods:
Start the client with
--host=
host_name
--port=
to connect via TCP/IP to a remote server, with
port_number
--host=127.0.0.1
--port=
to connect via TCP/IP to a local server, or with
port_number
--host=localhost
--socket=
to connect to a local server via a Unix socket file or a
Windows named pipe.
file_name
Start the client with
--protocol=TCP
to connect via
TCP/IP, --protocol=SOCKET
to
connect via a Unix socket file,
--protocol=PIPE
to connect via
a named pipe, or
--protocol=MEMORY
to connect
via shared memory. For TCP/IP connections, you may also need
to specify --host
and
--port
options. For the other
types of connections, you may need to specify a
--socket
option to specify a
Unix socket file or Windows named-pipe name, or a
--shared-memory-base-name
option to specify the shared-memory name. Shared-memory
connections are supported only on Windows.
On Unix, set the MYSQL_UNIX_PORT
and
MYSQL_TCP_PORT
environment variables to
point to the Unix socket file and TCP/IP port number before
you start your clients. If you normally use a specific socket
file or port number, you can place commands to set these
environment variables in your .login
file
so that they apply each time you log in. See
Section 2.20, “Environment Variables”.
Specify the default Unix socket file and TCP/IP port number in
the [client]
group of an option file. For
example, you can use C:\my.cnf
on
Windows, or the .my.cnf
file in your home
directory on Unix. See Section 4.2.3.3, “Using Option Files”.
In a C program, you can specify the socket file or port number
arguments in the
mysql_real_connect()
call. You
can also have the program read option files by calling
mysql_options()
. See
Section 20.8.3, “C API Function Descriptions”.
If you are using the Perl DBD::mysql
module, you can read options from MySQL option files. For
example:
$dsn = "DBI:mysql:test;mysql_read_default_group=client;" . "mysql_read_default_file=/usr/local/mysql/data/my.cnf"; $dbh = DBI->connect($dsn, $user, $password);
See Section 20.10, “MySQL Perl API”.
Other programming interfaces may provide similar capabilities for reading option files.
MySQL Enterprise. Subscribers to MySQL Enterprise will find additional information on running multiple MySQL servers on one machine in the MySQL Enterprise Knowledge Base article found at https://kb.mysql.com/view.php?id=4926.
User Comments
Add your own comment.