Difference between revisions of "Installing InnoDB"

From The Uniform Server Wiki
Jump to navigation Jump to search
m (Reverted edits by Upazixorys (Talk); changed back to last version by Kisalay)
Line 1: Line 1:
=[http://yzobiwysac.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=
 
 
A lot of users like me have had issues enabling (or as you can call it installing) InnoDB within MySQL. InnoDB support is available in MySQL as a lot of users on the forum pointed out, but not enabled by default. To enable it, please follow the instructions below.
 
A lot of users like me have had issues enabling (or as you can call it installing) InnoDB within MySQL. InnoDB support is available in MySQL as a lot of users on the forum pointed out, but not enabled by default. To enable it, please follow the instructions below.
<br />
+
<br />
1. Open the W:\usr\local\mysql\bin\my-small.cnf file in Notepad or any other text editor of your choice. &lt;br /&gt;
+
1. Open the W:\usr\local\mysql\bin\my-small.cnf file in Notepad or any other text editor of your choice. <br />
2. Make sure the following lines appear as shown below - &lt;br /&gt;
+
2. Make sure the following lines appear as shown below - <br />
  
&amp;#35; Uncomment the following if you are NOT using innodb tables &lt;br /&gt;
+
&#35; Uncomment the following if you are NOT using innodb tables <br />
&amp;#35;skip-innodb &lt;br /&gt;
+
&#35;skip-innodb <br />
  
&amp;#35; Uncomment the following if you are using Innobase tables &lt;br /&gt;
+
&#35; Uncomment the following if you are using Innobase tables <br />
innodb_data_file_path = ibdata1:100M &lt;br /&gt;
+
innodb_data_file_path = ibdata1:100M <br />
innodb_data_home_dir = /usr/local/mysql/data/ &lt;br /&gt;
+
innodb_data_home_dir = /usr/local/mysql/data/ <br />
innodb_log_group_home_dir = /usr/local/mysql/data/ &lt;br /&gt;
+
innodb_log_group_home_dir = /usr/local/mysql/data/ <br />
innodb_log_arch_dir = /usr/local/mysql/data/ &lt;br /&gt;
+
innodb_log_arch_dir = /usr/local/mysql/data/ <br />
set-variable = innodb_mirrored_log_groups=1 &lt;br /&gt;
+
set-variable = innodb_mirrored_log_groups=1 <br />
set-variable = innodb_log_files_in_group=3 &lt;br /&gt;
+
set-variable = innodb_log_files_in_group=3 <br />
set-variable = innodb_log_file_size=5M &lt;br /&gt;
+
set-variable = innodb_log_file_size=5M <br />
set-variable = innodb_log_buffer_size=8M &lt;br /&gt;
+
set-variable = innodb_log_buffer_size=8M <br />
innodb_flush_log_at_trx_commit=1 &lt;br /&gt;
+
innodb_flush_log_at_trx_commit=1 <br />
innodb_log_archive=0 &lt;br /&gt;
+
innodb_log_archive=0 <br />
set-variable = innodb_buffer_pool_size=16M &lt;br /&gt;
+
set-variable = innodb_buffer_pool_size=16M <br />
set-variable = innodb_additional_mem_pool_size=2M &lt;br /&gt;
+
set-variable = innodb_additional_mem_pool_size=2M <br />
set-variable = innodb_file_io_threads=4 &lt;br /&gt;
+
set-variable = innodb_file_io_threads=4 <br />
set-variable = innodb_lock_wait_timeout=50 &lt;br /&gt;
+
set-variable = innodb_lock_wait_timeout=50 <br />
  
3. You can modify the values to suit your needs, but the default ones work great. &lt;br /&gt;
+
3. You can modify the values to suit your needs, but the default ones work great. <br />
4. Restart the server.  &lt;br /&gt;
+
4. Restart the server.  <br />
5. Go to PHPMyAdmin and click on &quot;Show MySQL Runtime Information&quot;&lt;br /&gt;
+
5. Go to PHPMyAdmin and click on "Show MySQL Runtime Information"<br />
6. Click on InnoDB hyperlink which will take you to a lower part of the same page. Just under that information table, you will find a link for detailed &quot;InnoDB Status&quot;. &lt;br /&gt;
+
6. Click on InnoDB hyperlink which will take you to a lower part of the same page. Just under that information table, you will find a link for detailed "InnoDB Status". <br />
7. On the top, what you are most likely to see is &quot;InnoDB is disabled for this server&quot;.  If not, you are good to go. &lt;br /&gt;
+
7. On the top, what you are most likely to see is "InnoDB is disabled for this server".  If not, you are good to go. <br />
8. To resolve the issue in #7, shutdown the server once more. &lt;br /&gt;
+
8. To resolve the issue in #7, shutdown the server once more. <br />
9. Go to W:\usr\local\mysql\data\ and delete (or at least temporarily move) the files beginning with &quot;ib_logfile*&quot; and &quot;ibdata*&quot; where * indicates a number. &lt;br /&gt;
+
9. Go to W:\usr\local\mysql\data\ and delete (or at least temporarily move) the files beginning with "ib_logfile*" and "ibdata*" where * indicates a number. <br />
10. Restart the server, and follow steps 5-7 above. You should hopefully be able to now see &quot;InnoDB is available on this MySQL server&quot;. &lt;br /&gt;
+
10. Restart the server, and follow steps 5-7 above. You should hopefully be able to now see "InnoDB is available on this MySQL server". <br />
  
 
That's it. Enjoy.
 
That's it. Enjoy.

Revision as of 08:38, 24 November 2010

A lot of users like me have had issues enabling (or as you can call it installing) InnoDB within MySQL. InnoDB support is available in MySQL as a lot of users on the forum pointed out, but not enabled by default. To enable it, please follow the instructions below.
1. Open the W:\usr\local\mysql\bin\my-small.cnf file in Notepad or any other text editor of your choice.
2. Make sure the following lines appear as shown below -

# Uncomment the following if you are NOT using innodb tables
#skip-innodb

# Uncomment the following if you are using Innobase tables
innodb_data_file_path = ibdata1:100M
innodb_data_home_dir = /usr/local/mysql/data/
innodb_log_group_home_dir = /usr/local/mysql/data/
innodb_log_arch_dir = /usr/local/mysql/data/
set-variable = innodb_mirrored_log_groups=1
set-variable = innodb_log_files_in_group=3
set-variable = innodb_log_file_size=5M
set-variable = innodb_log_buffer_size=8M
innodb_flush_log_at_trx_commit=1
innodb_log_archive=0
set-variable = innodb_buffer_pool_size=16M
set-variable = innodb_additional_mem_pool_size=2M
set-variable = innodb_file_io_threads=4
set-variable = innodb_lock_wait_timeout=50

3. You can modify the values to suit your needs, but the default ones work great.
4. Restart the server.
5. Go to PHPMyAdmin and click on "Show MySQL Runtime Information".
6. Click on InnoDB hyperlink which will take you to a lower part of the same page. Just under that information table, you will find a link for detailed "InnoDB Status".
7. On the top, what you are most likely to see is "InnoDB is disabled for this server". If not, you are good to go.
8. To resolve the issue in #7, shutdown the server once more.
9. Go to W:\usr\local\mysql\data\ and delete (or at least temporarily move) the files beginning with "ib_logfile*" and "ibdata*" where * indicates a number.
10. Restart the server, and follow steps 5-7 above. You should hopefully be able to now see "InnoDB is available on this MySQL server".

That's it. Enjoy.