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 using TCP/IP to a remote server, with- port_number- --host=127.0.0.1- --port=to connect using TCP/IP to a local server, or with- port_number- --host=localhost- --socket=to connect to a local server using a Unix socket file or a Windows named pipe.- file_name
- Start the client with - --protocol=TCPto connect using TCP/IP,- --protocol=SOCKETto connect using a Unix socket file,- --protocol=PIPEto connect using a named pipe, or- --protocol=MEMORYto connect using shared memory. For TCP/IP connections, you may also need to specify- --hostand- --portoptions. For the other types of connections, you may need to specify a- --socketoption to specify a Unix socket file or Windows named-pipe name, or a- --shared-memory-base-nameoption to specify the shared-memory name. Shared-memory connections are supported only on Windows.
- On Unix, set the - MYSQL_UNIX_PORTand- MYSQL_TCP_PORTenvironment 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- .loginfile so that they apply each time you log in. See Section 6.9, “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.cnfon Windows, or the- .my.cnffile in your home directory on Unix. See Section 6.2.2.2, “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 C API Basic Function Descriptions.
- If you are using the Perl - DBD::mysqlmodule, 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 31.9, “MySQL Perl API”. - Other programming interfaces may provide similar capabilities for reading option files.