Cannot run XAMPP MySQL module with a MySQL server already installed? - mysql

I need to use both the XAMPP MySQL module and a seperate MySQL server for personal reasons. I run Windows 7 64-bit and I use MySQL 5.7.16 and XAMPP v5.6.24.
I have tried changing the port that the XAMPP MySQL module uses in the XAMPP control panel configurations, in the my.ini file, in the php.ini file, and in the config.inc.php file. When I click "Start" for the MySQL module in the XAMPP control panel, I get a message that says "[mysql] Attempting to start MySQL service..." but it never gets beyond that. It doesn't even give me an error message.
For now, I have to uninstall the MySQL server and wipe it completely from my computer every time I want to use the XAMPP module. This is proving to be a pretty daunting task, though. Any suggestions would be appreciated.

Related

MySQL Workbench Server startup

I am having trouble starting up a server through MySQL Workbench. From the navigator pane on the left side of Instance -> Start/Shutdown, I tried the "Start Server" button at which point the server will look like it will try to start. The workbench will get hung up at this point and indefinitely not respond with a "thinking" mouse icon while in the workbench app.
This is my first time learning to use MySQL workbench, which I want to say that when I initially installed MySQL Workbench a server did start after installation and worked fine. It was after restarting my computer and checking on the workbench the next day (today) that the server no longer runs. I'm not seeing any MySQL references in my Services (services.msc) that might relate to starting up but that might also be because I did not install as a Windows Service. My original troubleshooting was in trying to establish a connection, which I realized it was because the server wasn't running. Could someone help me understand why the server isn't starting? Or would it be recommended to install the workbench as a Windows Service to avoid the issue I'm having?
Screenshot of the MySQL Workbench window where the application will get hung up when starting the server.
Current setup: Personal workstation, Windows 10 (64 bit), MySQL Workbench 8.0 (version 8.0.29 build 1751076 CE 64 bits). I do not plan on running the server 24/7 since this is my personal workstation.
Right-click on My Computer
Select Manage
Select Services under Servies and applications
Find MySQL among the services and open it.
Choose Automatic as a start option.
Click on start.
Press Apply & OK then exit.
It is not necessary, but I still recommend restarting PC.
The solution below fixed my issue. I definitely recommend installing MySQL Server as a windows service and making sure uncheck mark the box that says to start when Windows starts unless you plan to have your computer as a dedicated server.
Source from #Lazycoder_007
This solution uses the window's mysql installer which you have used to
install your MySQL.
Start your windows mysql installer. For me it was
"mysql-installer-community-8.0.20.0"
Then remove/uninstall the SQL
Server and remove all configurations
Manually delete the SQL Server
folder from "C:\Program Files\MySQL\MySQL Server 8.0."
Start your
mysql installer again and install the SQL Server again
You can check
now that the MySqL Server has started.

A little different than ordinary case of MySQL and xampp

I've been struggling with this problem for quite some time, I downloaded
'MySQL server' and 'workbench' and installed them, later I downloaded xampp and now there is a problem that xampp comes with its own mysql and is not able to trace my already installed version, So I want to give xampp the path to my already installed MySQL. I tried installing xampp with its own mysql but there was a conflict for ports between the two - sql(that came with xampp) and my MySQL.

How to connect XAMPP to existing MySQL

I have just installed XAMPP, but in the installation process I unticked MySQL because I already have a previous version on my computer. A couple of months ago I installed MySQL with Workbench and I've been using it, and I want to keep all the databases I have. So, please as simple as possible, given that the service MySQL is currently completely disabled in the XAMPP control panel as I didn't install it with the installer and I can't either start it or stop it (the service), how can I connect the MySQL I already have to XAMPP, so it recognizes it and I can start it from the panel?

Xampp MySQL not starting - "Attempting to start MySQL service..."

I've just installed XAMPP for Windows - should be the newest version (XAMPP Control Panel v3.2.1).
Apache is running just fine on port 80 and 443, but MySQL is not starting. When I press the start button, I get this message:
Attempting to start MySQL service...
Then a window pops up and asks me if I want to allow this, which I want. But nothing happens after that. I can press as many times as I want, but with the same result.
What can I do with MySQL?
If you have MySQL already installed on your windows then go to services.msc file on your windows and right click the MySQL file and stop the service, now open your XAMPP and start MySQL. Now MySQL will start on the port 3306.
I had an issue with this because I had accidentally installed XAMPP to c:\windows\program files (x86) which caused a Windows permissions issue.
The installation says not to install it there, but I thought it had said to install it there.
I uninstalled and reinstalled to c:\xampp and it worked.
After Stop xampp, go to configure and change the port 3306 to 3308 of mysql and save. Now start the sql......Enjoy
In the cmd type: services.msc Find MySql and change properties to the disabled.
In the control panel of Xampp uninstall MySql by the checkbox on the left side, and install again by the click in the same checkbox.
Windows 10 Users:
I had this issue too. A little bit of investigating helped out though. I had a problem before this one, that 3306 was being used. So what I found out was that port 3306 was being used by another program. Specifically a JDBC program I was trying to learn and I had xammp installed before I tried this JDBC out. So I deleted the whole file and then here I am, where you're at. The issue was that my 'ImagePath'(registry variable) was changed upon installing mySql again. To put it simply, xammp doesn't know where your mysqld.exe is at anymore, or the file is not in the location that you told it to be. Here's how to fix it:
Open run (Win + r) and type 'regedit'. This is where you edit your registry.
Navigate to: HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Services > MySql
Click on mySql and notice the ImagePath variable. Right click 'ImagePath' and click modify.
Enter the location of your xammp mySqld file (navigate through xammp to find it) Although it is likely the same as mine.
Cool Sources:
https://superuser.com/questions/222238/how-to-change-path-to-executable-for-a-windows-service/252850
https://dev.mysql.com/doc/mysql-windows-excerpt/5.7/en/mysql-installation-windows-path.html
Thanks dave
One of many reasons is xampp cannot start MySQL service by itself. Everything you need to do is run mySQL service manually.
First, make sure that 'mysqld.exe' is not running, if have, end it. (go to Task Manager > Progresses Tab > right click 'mysqld.exe' > end task)
Open your services.msc by Run (press 'Window + R') > services.msc or 0n your XAMPP ControlPanel, click 'Services' button.
Find 'MySQL' service, right click and run it.
Only stop My sql In Xampp For 15 Min After 15 min restart Mysql .If my sql running But Port Not Showing in Xampp then Click Config > my.ini edit this file and change port no 3306 > 3307 and save and Restart xampp .........
Only for windows
I have fixed the mysql startup issue by following below steps
Steps:
Open CMD and copy paste the command netstat -ano | findstr 3306
If you get any result for command then the Port 3306 is active
Now we want to kill the active port(3306), so now open powershell and paste the command
Stop-Process -Id (Get-NetTCPConnection -LocalPort 3306).OwningProcess -Force
Where 3306 is active port. Now port will be inactive
Start Mysql service from Xampp which will work fine now
Note: This works only if the port 3306 is in active state. If you didn't get any result from step 1 this method is not applicable. There could be some other errors
For other ports change 3306 to "Required port"
Ways to open CMD and Powershell
For CMD-> search for cmd from start menu
For Powershell-> search for powershell from start menu
Had this problem today, on a Windows 10 machine. Opened C:\xampp\data\mysql_error.log and looked for lines containing [ERROR].
Last error line was:
... [ERROR] InnoDB: File (unknown): 'close' returned OS error 206. Cannot continue operation
Important note: if your error is different, google it (you'll likely find a fix).
Searching for the above error, found this thread on Apache Friends Support Forum, which led me to the fix:
Open C:\xampp\mysql\bin\my.ini and add the following line towards the end of [mysqld] section (above the line containing ## UTF 8 Settings):
innodb_flush_method=normal
Restart MySQL service. Should run just fine.
Did you use the default installation path?
In my case, when i ran mysql_start.bat I got the following error:
Can`t find messagefile 'D:\xampp\mysql\share\errmsg.sys'
I moved my xampp folder to the root of the drive and it started working.
Hope it helps
If you have other testing applications like SQL web batch etc, uninstall them because they are running in port 3306.
I have the same problem. Finally found the solution:
The Relocate XAMPP option in the setup tool didn't correctly relocate the paths and corrupted them, I've manually changed the directories inside my.ini (base dir, data dir , ...). After that mysql started successfully.
The problem I had was changing the path of the Xammp folder in the system.
I can share how I solved the problem in my case.
It seems that somehow I had mySQL Server 5.7 installed. It didn't show on Add/Remove Programs list in Windows tough so I wasn't aware of it. I marked that after I looked up the XAMPP log.
Just after XAMPP launched it has shown in the log that there is a conflict in mySQL and indicated the folder where my mySQL Server 5.7 is installed. I removed mySQL 5.7 manually from Program Files (x86) and ProgramData folder, restarted and XAMPP mySQL started normally then.
I've tried only stopping the mySQL service but for me it didn't work. Only manually deleting all mySQL 5.7 folders seemed to have helped.
Everytime my MySQL starts, it will stop, then I noticed that some files are getting generated in C:\xampp\mysql\data. I tried deleting some files (like the Error logs, err file, etc.) on that directory. Back up first what you're going to delete to avoid losing data.
I don't know how it works. I'm just trying to enable HTTPS in my local machine but then suddenly MySQL can't be started. But now it's working.
I'm using Windows 10 and XAMPP 3.2.4.
This worked for me.
Search for Services in Windows Start
Find MySQL in it.
Right Click and Stop MySQL. Would work on XAMPP Now.
Note: If you wanna use the MYSQL prompt again, you will have to start the MYSQL from Service again.
In my case I had xampp installed with PHP 7.4.
But I needed PHP 8.
I downloaded xampp with PHP 8.
Installed it to C:/xampp8/ folder. When I started the new version, it started successfully.
But then I realized that I needed the database data from the old xampp installation. I stopped the new xampp(php 8 version) , and tried to start xampp (php 7.4 version) and saw that Apache started and was working fine, but mysql was not starting.
I tried many settings but couldn't start mysql from the old xampp.
Solution in my case to copy the data to the new xampp
I went to C:/xampp_old/mysql/data folder. And saw that each of my database has a separate folder inside data folder. I copied all the folders and pasted into
C:/xampp8/mysql/data/
Then I started new xampp and looked in phpmyadmin via browser and I got all my databases back.
In the xampp control panel, to the left of "MySQL" there is a green checkbox, click it to uninstall MySQL service. After that you can start MySQL from the same control panel. You can install those services again, it will still work.
What worked for me was to run xampp "as administrator". Fixed.
I solved this problem by removing all the information in the path
C:\xampp\mysql\data
And copy the information inside this path
C:\xampp\mysql\backup
In Windows, you should go: Start > Run > services.msc > Apache 2.4 > Properties > Start Mode > Automatic > Apply > Start > OK > [Same as MySQL]
if all solutions up did not work for you, make sure the service is running and not set to Disabled!
Go to Services from Control panel and open Services,
Search for Apache2.4 and mysql then switch it to enabled, in the column of status it should be switched to Running

What is forcing my system to look for MySQL in "/opt/local/var/run/mysqld/mysqld.sock"

I have been trying to get a ruby on rails app going on my machine for a little while now for a project I need to work on for work. The issue is, my system must be setting the default location of MySQL somewhere because every time I start the rails webserver (webrick) and run localhost:3000, I get the following error.
"Can't connect to local MySQL server through socket '/opt/local/var/run/mysqld/mysqld.sock' (2)"
I have deleted the installed version of mysql and removed all folders. I reinstalled mysql using BREW. I now have a running mysql instance. The output of "which mysql" prints "/usr/local/bin/mysql" which is actually a sim link to "/usr/local/Cellar/mysql/5.5.14/bin/mysql".
Does anyone know what might be forcing my rails apps to look for mysql in "/opt/local/var/run/mysqld/mysqld.sock"
NOTE: I deleted my current my.cnf because it was messing up the brew version of mysql I currently have running, so I know that is has nothing to do with that.
/opt/local is the default location for MacPorts-installed packages. Chances are you installed rails and or MySQL via MacPorts. Try:
sudo /opt/local/bin/port installed
to see what is installed.