Bug #58954 Config wizard cannot continue unless firewall excpetion is added
Submitted: 15 Dec 2010 21:08 Modified: 31 Mar 2014 8:35
Reporter: Peter Laursen (Basic Quality Contributor) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Config Wizard Severity:S3 (Non-critical)
Version:5.5.8 OS:Windows (7/64)
Assigned to: CPU Architecture:Any
Tags: qc

[15 Dec 2010 21:08] Peter Laursen
Description:
Doing a fresh install of 5.5.8 from the .msi and launching the config wizard.  i am prompted if I want to create a fireqll exeption and reply 'no'.  The wizard cannot complete.  It hangs for long (approximately 30 seconds - image will be uploaded) and finally returns some completely misunderstood garbage/nonsense message that a client cannot connect if not a firewall exception is added.

This is garbage and nonsense as I can connect with any client while the config wizard in this incomplete state.

How to repeat:
see above.

Suggested fix:
let the config wizard connect as other clients.
[15 Dec 2010 21:09] Peter Laursen
Here it 'hangs' -- while doing so I can connect with other clients.

Attachment: hangsforever.jpg (image/jpeg, text), 33.71 KiB.

[15 Dec 2010 21:31] Peter Laursen
OK .. I have an idea!  

This was not a *completely* fresh install, because I had a /datadir left over from a 5.5.8 instance that was removed from the system. In the mysql.user table 'root'@'localhost' was defined with a password. The same password I entered in the config wizard after selecting the instance to be altered.

So reproduction should follow the steps:
* install 5.5.8 as a completely fresh installation using .msi. Don't add firewall exception.
* ensure root has a password (not sure if it is important though)
* uninstall 5.5.8 from Control Panel .. uninstall menu
* delete the installation folder (maybe not important either) but *important* leave program data/../data folder intact
* now install again using .msi.  Don't add firewall exception.  Watch 'security settings' to fail after ~30 seconds. Before it does connect with some other client using TCP

Maybe (I think so) the error message about Firewall is triggered incorrectly and the error really is another.

Actually 'security settings' are there in the mysql.user already.  I think it would make sense to skip that step (with some information to user) if a valid /datadir is found.
[15 Dec 2010 22:27] Peter Laursen
BTW: I am using 64 bit installer if it matters.

It could be related to other reports (one by myself) that the uninstaller does not properly remove the service if server is 64 bit.
[16 Dec 2010 8:45] Peter Laursen
similar:

http://bugs.mysql.com/bug.php?id=58962
http://bugs.mysql.com/bug.php?id=58965
[16 Dec 2010 15:45] MySQL Verification Team
http://bugs.mysql.com/bug.php?id=58954 marked as duplicate of this one.
[19 Dec 2010 20:16] Elena Stepanova
There is a problem which seems to match the use case. It's rather old, but I don't know if there is any active bug about it.

When you uninstall MySQL server and then install it again over an existing data dir, the newly installed config wizard does not detect that there is already a non-empty data dir. So, in the security settings screen, it only suggests to enter and re-enter the *new* root password, but does not ask for an old one. Thus, if you already had a non-empty root password in your existing data dir, further attempt to apply the security settings fail, as the wizard attempts to connect to the server using an empty root password.

The indications of this problem are
- 2 root password fields instead of 3 in the security settings screen;
- 'Error Nr. 1045 Access denied for user 'root'@'localhost' (using password: NO)' in the error screen after the attempt to apply the security settings fails.

Peter, 
does it look like what you've seen?
You have not put a screen shot of the final error screen or quoted the error message before the "garbage/nonsense message" about the firewall, so it's not easy to say for sure if it is the same issue.
[19 Dec 2010 20:44] Peter Laursen
Yes .. it looks like what I have seen.  It is a bug!
[19 Dec 2010 20:51] Elena Stepanova
The following workarounds should work:

1) Do not apply security settings during the installation (it's not 'unsecure', since the root password has already been set anyway);

or

2) After the wizard fails on the last step (cannot apply security settings), press 'Skip' and re-run the wizard, choosing 'reconfigure instance'. It will allow to enter the old password then.
[19 Dec 2010 22:25] Peter Laursen
Obviously -- but what is then the idea of a GUI installer/config wizard.  It is suppose to handle every case transparently for user.  Don't expect Windos user to accept such 'workarounds'.  It is low behind normal Windows standards (and 99% of them will never read this bug report anyway).
[26 Jan 2011 20:35] Quang Dangtran
Installing on a fresh Windows Vista with no prior MySQL with mysql-5.5.8-win32.msi.

System: Windows Vista, Microsoft Security Essential, and Firewall
Firewall has opened a port 3306.

Installing MySQL Server 5.5, and on the Instance Configuration Screen I receive the error
'Could not start the service MySQL5.Error:0"

Here are the steps to reproduce the error:
1) Select "Detailed Configuration", press Next
2) Select "Developer Machine", press Next
3) Select "Multifunctional Database, press Next
4) Select \\MySQL Datafiles\, press Next
5) Select Decision Support(DSS)/OLAP, press Next
6) Select "Enable TCP/IP Networking with Port Number: 3306, and Enable Strict Mode, press Next
7) Select "Standard Character Set", press Next
8) Select "Install As Windows Service" with Service Name: MySQL, press Next
9) Enter the root password
10) press Execute

What can I do to complete the installation?

How to repeat:
Unistalled, and tried re-installing with the same error.

And this is what seen on the console when run from a command line.

C:\Program Files\MySQL\MySQL Server 5.5\bin>mysql --console
mysql: unknown option '--console'

C:\Program Files\MySQL\MySQL Server 5.5\bin>mysqld --console
110126 12:52:30 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use Windows interlocked functions
InnoDB: Compressed tables use zlib 1.2.3
110126 12:52:30  InnoDB: Initializing buffer pool, size = 47.0M
110126 12:52:30  InnoDB: Completed initialization of buffer pool
110126 12:52:30  InnoDB: highest supported file format is Barracuda.
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
110126 12:52:30  InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
110126 12:52:30  InnoDB: Assertion failure in thread 3480 in file ..\..\..\mysq
-5.5.8\storage\innobase\fsp\fsp0fsp.c line 2101
InnoDB: Failing assertion: inode
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.1/en/forcing-recovery.html
InnoDB: about forcing recovery.
110126 12:52:30 - mysqld got exception 0xc0000005 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help diagnose
the problem, but since we have already crashed, something is definitely wrong
and this may fail.

key_buffer_size=26214400
read_buffer_size=65536
max_used_connections=0
max_threads=100
thread_count=0
connection_count=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 58325 K
bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

thd: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
002D1FC8    mysqld.exe!fseg_inode_get()[fsp0fsp.c:2101]
002D21A7    mysqld.exe!fseg_n_reserved_pages()[fsp0fsp.c:2436]
002A007A    mysqld.exe!ibuf_init_at_db_start()[ibuf0ibuf.c:550]
002EBC36    mysqld.exe!dict_boot()[dict0boot.c:450]
0027FBB6    mysqld.exe!innobase_start_or_create_for_mysql()[srv0start.c:1623]
00277C2F    mysqld.exe!innobase_init()[ha_innodb.cc:2476]
000CBA8D    mysqld.exe!ha_initialize_handlerton()[handler.cc:462]
000C6774    mysqld.exe!plugin_initialize()[sql_plugin.cc:1041]
000CA994    mysqld.exe!plugin_init()[sql_plugin.cc:1327]
000B9B3F    mysqld.exe!init_server_components()[mysqld.cc:3874]
000BA49B    mysqld.exe!win_main()[mysqld.cc:4438]
000BA843    mysqld.exe!mysql_service()[mysqld.cc:4630]
000BAAF7    mysqld.exe!mysqld_main()[mysqld.cc:4816]
003C5277    mysqld.exe!__tmainCRTStartup()[crt0.c:266]
77AED0E9    kernel32.dll!BaseThreadInitThunk()
77BC19BB    ntdll.dll!RtlInitializeExceptionChain()
77BC198E    ntdll.dll!RtlInitializeExceptionChain()
The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.

C:\Program Files\MySQL\MySQL Server 5.5\bin>
[26 Jan 2011 21:00] Quang Dangtran
Installing on a fresh Windows Vista with no prior MySQL with mysql-5.5.8-win32.msi.

I have more to add. I uninstall the mysql and delete all folders related to it. I reinstall the mysql and ran the Config Wizard at the second step.

The Config Wizard hangs forever and never returns anything at the "Write Configuration File", during this time my machine cpu usage jumps up around 50% and the fan running fast. It appears something is running but never stops.

So what is going on? And what is the fix?
[26 Jan 2011 21:12] Peter Laursen
As the original reporter here I'd like to add a comment.

The synopsis I provided is probably wrong.  I now think that this is a duplicate.  The problem occurs if 'strict mode' is selected AND (root access from remote machines is allowed OR anonymous user is added).

@Quang: try *NOT* to select strict mode. Keep the '' mode.  You will always be able to add any mode to the configuration later by editing the configuration file.
[31 Mar 2014 8:35] Yngve Svendsen
Posted by developer:
 
Thank you for the bug report. We are closing this report now since the original config wizard is no longer the focus of Windows deployment efforts. For recent MySQL Server versions, the config wizard is also no longer available, and the MySQL Installer for Windows is the recommended way to install MySQL Server on Windows.