web-dev-qa-db-fra.com

Comment changer la prise par défaut utilisée par MySqladmin?

Comment changer la prise par défaut utilisée par MySqladmin?

Je ne vois pas une section pour [mysqladmin] dans /etc/my.cnf.

Il essaie par défaut de se connecter à /tmp/mysql.sock Cependant, ce n'est pas le socket que mon serveur MySQL utilise, donc je reçois l'erreur:

error: 'Can't connect to local MySQL server through 
    socket '/tmp/mysql.sock' 

Je sais que vous pouvez spécifier la prise de la ligne de commande, telle que:

mysqladmin --socket='/some/other/path/mysql.sock'

Comment changer la prise par défaut utilisée par MySqladmin, donc je n'ai pas à spécifier mon chemin non standard à chaque fois?

5
robguinness

Ajouter une section [mysqladmin] dans votre /etc/my.cnf ou alors $USER/.my.cnf et réglez la prise. Cela remplacera la prise compilée et le socket défini dans l'[mysqld] section.

Vous devriez être capable de le comprendre de ce qui est indiqué ci-dessous:

VM52-CentOS58[root@ivdb41 ~]# mysqladmin ping

mysqladmin: connect to server at 'localhost' failed error: 'Can't connect to local MySQL server through socket '/var/lib/mysql/mysql2.sock' (2)' Check that mysqld is running and that the socket: '/var/lib/mysql/mysql2.sock' exists!

VM52-CentOS58[root@ivdb41 ~]# grep -A 1 mysqladmin /etc/my.cnf

[mysqladmin]
socket=/var/lib/mysql/mysql2.sock

VM52-CentOS58[root@ivdb41 ~]# mysqladmin ping mysqld is alive

VM52-CentOS58[root@ivdb41 ~]# grep -A 1 mysqladmin /etc/my.cnf

[mysqladmin]
# socket=/var/lib/mysql/mysql2.sock
2
Todd Lyons

Mieux encore, faites de cette section [client] pour couvrir pour tout appel client MySQL. Comme cela ne fonctionnera que pour mysqladmin

2
TechieGurl