MySQL my.ini location
MysqlWindowsMysql 5.5Mysql Problem Overview
I have already seen http://dev.mysql.com/doc/refman/4.1/en/mysql-config-wizard-file-location.html
https://stackoverflow.com/questions/2482234/how-to-know-mysql-my-cnf-location
and
http://dev.mysql.com/doc/refman/5.1/en/option-files.html
But I am still stuck with the ages old question!
"Where is my my.ini"
I am using windows server 2008 with mysql 5.5.28. I installed the service using mysqld --install and I am able to use the mysql server using sqlyog. But unfortunately I am not able to find my.ini in installation directory
or not in c:\
neither in c:\windows
nor in data_dir
query show variables like "mysql_home"
returned nothing as well.
Any suggestions?
Mysql Solutions
Solution 1 - Mysql
my.ini LOCATION ON WINDOWS MYSQL 5.6 MSI (USING THE INSTALL WIZARD)
Open a Windows command shell and type: echo %PROGRAMDATA%
. On Windows Vista this results in: C:\ProgramData
.
According to http://dev.mysql.com/doc/refman/5.6/en/option-files.html, the first location MySQL will look under is in %PROGRAMDATA%\MySQL\MySQL Server 5.6\my.ini
. In your Windows shell if you do ls "%PROGRAMDATA%\MySQL\MySQL Server 5.6\my.ini"
, you will see that the file is there.
Unlike most suggestions you will find in Stackoverflow and around the web, putting the file in C:\Program Files\MySQL\MySQL Server 5.6\my.ini
WILL NOT WORK. Neither will C:\Program Files (x86)\MySQL\MySQL Server 5.1
. The reason being quoted on the MySQL link posted above:
> On Windows, MySQL programs read startup options from the following > files, in the specified order (top items are used first).
The 5.6 MSI installer does create a my.ini in the highest priority location, meaning no other file will ever be found/used, except for the one created by the installer.
The solution accepted above will not work for 5.6 MSI-based installs.
Solution 2 - Mysql
- Enter "services.msc" on the Start menu search box.
- Find MySQL service under Name column, for example, MySQL56.
- Right click on MySQL service, and select Properties menu.
- Look for "Path To Executable" under General tab, and there is your .ini file, for instance, "C:\Program Files (x86)\MySQL\MySQL Server 5.6\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.6\my.ini" MYSQL56
Solution 3 - Mysql
I've found mine in
\ProgramData\MySQL\MySQL Server 8.0\
(It is a hidden folder)
You can type win+R
and write %PROGRAMDATA%
to access that folder, or just enable show hidden folder.
Solution 4 - Mysql
You have to look I the folder C:\Program Files\MySQL\MySQL Server 5.5
but there is a problem. When you perform an MSI install of MySQL, my.ini is not created. There will be sample .ini files in that folder. In order to use one of them, say my-medium.ini
, you need to do the following before a MySQL restart:
cd C:\Program Files\MySQL\MySQL Server 5.5
copy my-medium.ini my.ini
net stop mysql
net start mysql
Once, you do this, my.ini
can be read by C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe
.
Solution 5 - Mysql
Start MySQL Workbench, then Server -> Options File and look at bottom of the window; it will say something like "Configuration File: C:\ProgramData\MySQL\MySQL Server 5.6\my.ini"
(And note the subtle difference between "ProgramData" and "Program Files" - easy to gloss over if you're looking for a quick answer.)
Solution 6 - Mysql
Solution 7 - Mysql
You can find the my.ini file in windows at this location- C:\ProgramData\MySQL\MySQL Server 5.6
the ProgramData folder is a hidden folder, so make the according setting to see that folder. And open my.ini file as an administrator to edit and then save that.
Solution 8 - Mysql
In my case, the folder ProgramData
was hidden by default on windows 7, so I was unable to find my.ini
file.
After selecting show hidden files and folders option, I was able to find the my.ini
file at the location: C:\ProgramData\MySQL\MySQL Server 5.6
.
Display hidden files and folders on windows 7:
-
Right-click the Windows Logo button and choose Open Windows Explorer.
-
Click Organize and choose Folder and Search Options.
-
Click the View tab, select Show hidden files and folders and then clear the checkbox for Hide protected system operating files.
-
Click Yes on the warning and then click OK.
Solution 9 - Mysql
it is there at C:\Program Files\MySQL\MySQL Server 5.5 there are various .ini files with small, medium & large names. generally medium is used or it depends on your requirement.
Solution 10 - Mysql
programData
is hidden folder so you have to change the option from setting to show hidden folder and then make the change in my.ini
file present in that.
Be sure to update the correct my.ini
file because it can waste a lot of your time if you keep updating wrong file.
You can look into service to see which my.ini
is configured in this service.
Solution 11 - Mysql
Press the windows key > type services > press enter > Look up mysql in the list > right click > properties > Path to Executable will have the location of the defaults file right below it (my.ini)
Solution 12 - Mysql
Open your run console
type: services.msc
look for: mysql
as explained by this video
Solution 13 - Mysql
MySQL and MariaDB
According to the documentation of both MySQL and MariaDB you need to run mysql with --help --verbose
to know the location of the my.ini file
Go to the command or terminal
cd yourMySQLBinDirectory
mysqld --verbose --help
You will see large output but first few lines will show the order the server is looking for the file. I got the following response. It will be different for your computer or server.
Default options are read from the following files in the given order:
C:\WINDOWS\my.ini C:\WINDOWS\my.cnf C:\my.ini C:\my.cnf D:\Databases\mariadb-10.3.30-winx64\my.ini D:\Databases\mariadb-10.3.30-winx64\my.cnf D:\Databases\mariadb-10.3.30-winx64\data\my.ini D:\Databases\mariadb-10.3.30-winx64\data\my.cnf
Solution 14 - Mysql
I met with the same problem when I did MSI install of MySQL and there were no my-medium.ini files too when I tried the above steps. Only installing the ZIP file of MySQL helped me. So, I suggest you to uninstall the MSI installed folder and reinstall using the ZIP file.
Solution 15 - Mysql
on Windows if MySQL is install as a service you can change the binpath of the service. For example
sc config MySQL57 binPath= "\"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe\" --defaults-file=\"<myini path>" MySQL57"
space after binpath is important. You must escape double quotes
Solution 16 - Mysql
For MySql Server 8.0 The default location is %WINDIR% or C:\Windows.
You need to add a "my.ini" file there.
Here's a sample of what I put in the ini file.
[mysqld]
secure_file_priv=""
Make sure to restart the MySQL service after that.