I was able to install the latest version of OpenEMR 7.04. I used the XAMPP package to load Apache and MySQL. I was able to start both services as I installed Open EMR. I was able to successfully login to OpenEMR; however, when I closed the program and stopped both Apache and MySQL. I cannot get MySQL to start working again. It tells me that there may be a blocked port, missing dependencies, improper privileges, a crash, or shut down by another method.
I checked the ports and port 3306 is available. Any help would be greatly appreciated.
Thank you. I followed your instructions and did not find anything in the task manager. I have reviewed the mysql log in XAMPP and it does not provide any red flags.
Sorry Robert but I find it difficult to help track this down in a few posts.
I have seen this before but it’s been so long ago I don’t remember. I do know it’s easy to have auto started MySQL as a service running in background and also select engine to start on reboot etc. Initially works until restart. This conflicts.
Do a web search. You’re not the first I’m sure. Check php.ini. Start from command line and let mysql tell ya its woes.
Once up and running, xampp is very stable in my experience.
Hey, you might be better off testing with our easy dev or other dockers(production) located in docker folder off root.
Jerry - Thank you. I appreciate your help. I found this link following your directions. It could be corrupted files. The test machine I am using is from 2016 but still has some life to it.
I did get OpenEMR running on another computer, however, when I try to run the Care Coordination module, I get an error that refers to Node. Do you know where I might find update instructions for installing Node.js so it runs with OpenEMR. I uderstand that you need to run a portion of Node.js in the cdaservice folder, and on the machine itself.
From what I have found on the community board, the instructions are not clear on how to accomplish this.
This is very common with XAMPP after MySQL shuts down unexpectedly. Even if port 3306 looks free, the issue is usually one of these: corrupted InnoDB files, another MySQL service running in the background, or permission problems.
First, check if another MySQL service is running in Windows. Open services.msc and look for something like MySQL or MySQL80. If it’s running, stop it. XAMPP’s MySQL and a standalone MySQL service cannot both bind cleanly, even if the port appears free.
If no other service is running, check the XAMPP MySQL error log (xampp/mysql/data/mysql_error.log). If you see errors mentioning ibdata1, ib_logfile0, or InnoDB corruption, the shutdown likely damaged the InnoDB system tablespace. In that case, the quick test fix (only if this is a fresh OpenEMR install with no important data yet) is to stop MySQL, rename ibdata1, ib_logfile0, and ib_logfile1, then start MySQL again so it recreates them. Do not do this if you have important data unless you have backups.
Also make sure you are running XAMPP as Administrator. Improper privileges can prevent MySQL from accessing the data directory.
If the error log shows crash recovery failing or InnoDB refusing to start, then the database files may be corrupted from the forced shutdown. In that situation you may need to start MySQL with innodb_force_recovery to extract data, and if tables are damaged beyond repair, tools like Stellar Repair for MySQL can help recover InnoDB data from corrupted files.