I have two MySQL installations on two different PCs not connected to each other. I made some changes in the my.ini file of PC 1 and tried using this file on PC 2, but MySQL service fails to start. Why the copied My.INI not working on my PC when both installations were configured same and the instance names also similar?
First, let's make sure MySQL evens runs properly apart from the service.
Open a DOS Window Session and run these commands
C:\> cd "C:\Program Files\MySQL\MySQL 5.5\bin" C:\Program Files\MySQL\MySQL 5.5\bin> start mysqld
When you launch mysqld like this, mysqld expects my.ini to be in the parent directory, which is C:\Program Files\MySQL\MySQL 5.5. Using start in DOS will open another DOS Window as a background task. If any error messages appear in that window and that forked DOS Session quickly disappears from the screen, check the Task Manager to see if mysqld is running. If it is, you should be able to log into mysql. If mysqld is not in the Task Manager, launch it as a foreground task like this:
C:\Program Files\MySQL\MySQL 5.5\bin> mysqld
If the DOS prompt appears after some error messages, then mysqld failed. If error messages come up and the DOS prompt does not appear, mysqld is up.
If the settings you configured in my.ini on PC 2 is not in
SHOW VARIABLES; then mysqld cannot see the my.ini. To reiterate, mysqld expects my.ini to be in the parent directory.
Compare your my.ini files side-by-side, there must be some setting that makes it impossible to start your server, maybe some InnoDB setting. Check your system's event log under Windows System Logs > System (wording may be a bit different, I don't have English windows). There you will have a more detailed information on service fail reason.