Posizione MySQL my.ini


91

Ho già visto http://dev.mysql.com/doc/refman/4.1/en/mysql-config-wizard-file-location.html

come conoscere la posizione di mysql my.cnf

e

http://dev.mysql.com/doc/refman/5.1/en/option-files.html

Ma sono ancora bloccato con la vecchia domanda! "Dov'è il mio my.ini" Sto usando Windows Server 2008 con mysql 5.5.28. Ho installato il servizio utilizzando mysqld --install e sono in grado di utilizzare il server mysql utilizzando sqlyog. Ma sfortunatamente non sono in grado di trovare my.ini in installation directoryo no c:\né in c:\windowsné in data_dirquery show variables like "mysql_home"non ha restituito nulla.

Eventuali suggerimenti?


6
In MySQL 5.6 i dati e my.inisono memorizzati in (nel mio caso almeno)C:\ProgramData\MySQL\MySQL 5.6
Acute

Risposte:


34

Devi guardare nella cartella C:\Program Files\MySQL\MySQL Server 5.5ma c'è un problema. Quando esegui un'installazione MSI di MySQL, my.ini non viene creato. Ci saranno file .ini di esempio in quella cartella. Per poter utilizzare uno di questi, ad esempio my-medium.ini, devi eseguire le seguenti operazioni prima di riavviare MySQL:

cd C:\Program Files\MySQL\MySQL Server 5.5
copy my-medium.ini my.ini
net stop mysql
net start mysql

Una volta fatto questo, my.inipuò essere letto da C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe.


1
quindi da quello che stai dicendo .. Il mio server non sta usando alcun my.ini vero? Sembra anche così perché ho appena rinominato tutti i miei- [size] .ini e mysql funziona ancora correttamente !!!
Linfa

44
Se utilizzi il programma di installazione MSI, crea un file my.ini in% PROGRAMDATA% \ MySQL \ MySQL Server XY \ e lo utilizza. Quindi questa soluzione non funzionerà con esso.
NurShomik

4
Per eseguire il servizio di MySQL con il my.inifile creato, è necessario interrompere il servizio corrente prima net stop mysqle poi rimuoverlo: sc remove mysql. Quindi è necessario installare un nuovo servizio: "C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe" --install newMySQL --defaults-file="C:\Program Files\MySQL\MySQL Server 5.7\my.ini" ora è possibile eseguire il servizio con il net start newmysqlcomando.
NurShomik

2
Voglio solo migliorare il commento, dovrebbe essere "sc delete" non "sc remove" su Windows 10.
lsc

6
Per MySQL 5.7 su Windows la posizione di my.ini potrebbe essere "C: \ ProgramData \ MySQL \ MySQL Server 5.7 \ my.ini"
Mohsin Saeed

178

POSIZIONE my.ini SU WINDOWS MYSQL 5.6 MSI (UTILIZZANDO L'INSTALLAZIONE GUIDATA)

Aprire una shell dei comandi di Windows e digitare: echo %PROGRAMDATA%. In Windows Vista questo si traduce in: C:\ProgramData.

Secondo http://dev.mysql.com/doc/refman/5.6/en/option-files.html , la prima posizione in cui MySQL cercherà è %PROGRAMDATA%\MySQL\MySQL Server 5.6\my.ini. Nella shell di Windows, se lo fai ls "%PROGRAMDATA%\MySQL\MySQL Server 5.6\my.ini", vedrai che il file è lì.

A differenza della maggior parte dei suggerimenti che troverai in Stackoverflow e sul Web, inserire il file C:\Program Files\MySQL\MySQL Server 5.6\my.iniNON FUNZIONERÀ. Nessuno dei due C:\Program Files (x86)\MySQL\MySQL Server 5.1. Il motivo citato nel collegamento MySQL pubblicato sopra:

Su Windows, i programmi MySQL leggono le opzioni di avvio dai seguenti file, nell'ordine specificato (gli elementi in alto vengono utilizzati per primi).

Il programma di installazione MSI 5.6 fa creare un my.ini nella massima posizione di priorità, ciò significa che nessun altro file potrà mai essere trovato / usato, ad eccezione di quello creato dal programma di installazione.

La soluzione accettata sopra non funzionerà per le installazioni basate su MSI 5.6.


3
Sì, il mio era dentro %PROGRAMDATA%\MySQL\MySQL Server 5.6. Avrei preferito che fosse nei file di programma però ...
jurchiks

@ amateur-barista, sai come fare in modo che l'installer utilizzi il file my.ini in Program Files invece di quello in ProgramData? Inoltre, come fare in modo che MySQL Workbench utilizzi quello che fornisco invece di quello creato dall'installatore?
NurShomik

L'intera frase è "Su Windows, i programmi MySQL leggono le opzioni di avvio dai seguenti file, nell'ordine specificato (i file in alto vengono letti per primi, i file successivi hanno la precedenza)." Non capisco, perché è la posizione con la priorità più alta?
StackExploded

Allora perché diavolo anche il workbench MySQL suggerisce in molti posti che viene utilizzato quello dalla directory di installazione? E perché questo non è menzionato nei documenti MySQL (collegati da my-default.ini). Sono molto frustrato :-(
Josef Sábl

96
  1. Immettere "services.msc" nella casella di ricerca del menu Start.
  2. Trova il servizio MySQL nella colonna Nome, ad esempio MySQL56.
  3. Fare clic con il tasto destro sul servizio MySQL e selezionare il menu Proprietà.
  4. Cerca "Path To Executable" nella scheda General e troverai il tuo file .ini, ad esempio "C: \ Program Files (x86) \ MySQL \ MySQL Server 5.6 \ bin \ mysqld.exe" --defaults-file = "C: \ ProgramData \ MySQL \ MySQL Server 5.6 \ my.ini" MYSQL56

30

Ho trovato il mio in

\ProgramData\MySQL\MySQL Server 8.0\

(È una cartella nascosta)

Puoi digitare win+Re scrivere %PROGRAMDATA%per accedere a quella cartella o abilitare semplicemente mostra cartella nascosta.


25

Avvia MySQL Workbench, quindi Server -> File delle opzioni e guarda in fondo alla finestra; dirà qualcosa come "File di configurazione: C: \ ProgramData \ MySQL \ MySQL Server 5.6 \ my.ini"

(E nota la sottile differenza tra "ProgramData" e "Program Files" - facile da sorvolare se stai cercando una risposta rapida.)


2
FWIW: In MySQL Workbench 6.1, non c'è alcuna voce Server nel menu principale, a meno che non si apra un database. Quindi prima devi aprire il database localhost. Quindi puoi selezionare Server> File di opzioni. Nel mio sistema, è stata visualizzata una finestra di dialogo che diceva che nessun file my.ini è stato trovato in C: \ Program Files \ MySQL \ MySQL Server 5.0 \ my.ini (ma ne sarebbe stato creato uno). Un po 'sconcertante dato che sto eseguendo una versione successiva di MySQL ed è installato da qualche altra parte. Quindi, non proprio in fondo a questo mistero.
gwideman

9

Puoi trovare il file my.ini in Windows in questa posizione: C: \ ProgramData \ MySQL \ MySQL Server 5.6

la cartella ProgramData è una cartella nascosta, quindi effettua le impostazioni corrispondenti per vedere quella cartella. E apri il file my.ini come amministratore per modificarlo e quindi salvarlo.


9

Risposte solo per utenti MySQL Workbench,

inserisci qui la descrizione dell'immagine


4

Nel mio caso, la cartella ProgramDataera nascosta per impostazione predefinita su Windows 7, quindi non sono riuscito a trovare il my.inifile.

Dopo aver selezionato nascondi Mostra file e cartelle opzione, sono stato in grado di trovare il my.inifile nella posizione: C:\ProgramData\MySQL\MySQL Server 5.6.

Visualizza file e cartelle nascosti su Windows 7:

  1. Fare clic con il pulsante destro del mouse sul pulsante del logo di Windows e scegliere Apri Esplora risorse.

  2. Fare clic su Organizza e scegliere Cartella e opzioni di ricerca.

  3. Fare clic sulla scheda Visualizza, selezionare Mostra cartelle e file nascosti, quindi deselezionare la casella di controllo Nascondi file operativi di sistema protetti.

  4. Fare clic su Sì nell'avviso e quindi su OK.


2

è lì in C: \ Programmi \ MySQL \ MySQL Server 5.5 ci sono vari file .ini con nomi piccoli, medi e grandi. generalmente viene utilizzato il mezzo o dipende dalle vostre esigenze.


Oops ... ho pensato che per impostazione predefinita dovrebbe essere utilizzato my.ini. Hai ragione su tutti questi file. Sono presenti nella directory di installazione. Come confermereste quale viene utilizzato? Bene, sposterò temporaneamente il file e vedrò se il servizio mysql si riavvia o meno.
Linfa

puoi usarli in base alle tue esigenze. crate il file my.ini copiando i contenuti da uno qualsiasi di questi file (segui la risposta indicata di seguito per i comandi), quindi puoi utilizzare o personalizzare il tuo file my.ini e mysql utilizzerà anche questo file my.ini
Raul

2

programDataè una cartella nascosta quindi è necessario modificare l'opzione dall'impostazione per mostrare la cartella nascosta e quindi apportare la modifica al my.inifile presente in quella.

Assicurati di aggiornare il my.inifile corretto perché può far perdere molto tempo se continui ad aggiornare il file sbagliato.

Puoi esaminare il servizio per vedere quale my.iniè configurato in questo servizio.


2

Premi il tasto Windows> digita services> premi invio> Cerca mysql nell'elenco> fai clic con il pulsante destro del mouse> proprietà> Path to Executable avrà la posizione del file di default proprio sotto di esso (my.ini)


1

Apri il tipo di console di esecuzione: services.msc cerca: mysql fai clic con il pulsante destro del mouse su proprietà dove è scritto "percorso dell'eseguibile", fai clic e sposta il cursore a destra finché non vedi la directory di my.ini, è scritto "defaults-file- ". per accedervi manualmente nelle tue cartelle esplora devi abilitare la visualizzazione degli elementi nascosti (esplora cartella> menu in alto> visualizza> visualizza elementi nascosti)

come spiegato da questo video

https://www.youtube.com/watch?v=SvCAa2XuQhg


0

Ho riscontrato lo stesso problema quando ho installato MSI di MySQL e non c'erano nemmeno i file my-medium.ini quando ho provato i passaggi precedenti. Solo l'installazione del file ZIP di MySQL mi ha aiutato. Quindi, ti suggerisco di disinstallare la cartella MSI installata e reinstallare utilizzando il file ZIP.


0

su Windows se MySQL è installato come servizio è possibile modificare il binpath del servizio. Per esempio

sc config MySQL57 binPath= "\"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe\" --defaults-file=\"<myini path>" MySQL57"

lo spazio dopo binpath è importante. Devi sfuggire alle virgolette doppie

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.