Marco Junior Posted June 10, 2021 Posted June 10, 2021 Hello dears, I have a warning on my admincp this warning show-me a information refers to my database mode. What's this ? Compact mode ? Error: Your server does not meet our recommendations. This may prevent you from upgrading to future versions of Invision Community. You have one or more InnoDB tables that are using the `Compact` row format. This may limit the amount of data that can be stored within the table. We recommend changing it to 'Dynamic'. If you are not sure how to do this, you should contact your hosting provider or system administrator for assistance. You should contact your hosting provider or system administrator and ask them to resolve these issues.
Chris Anderson Posted June 10, 2021 Posted June 10, 2021 51 minutes ago, Marco Junior said: What's this ? Compact mode ? There are over half a dozen topics already started discussing this topic. This platform is deceptively easy to install but does require an understanding of the underlying hardware and operating system/software stack in order to ensure it's secure and operates efficiently. The knowledge is readily attained through extensive internet searching but requires a great deal of one's time to master it all. Unless you have a "very" small userbase and traffic you will likely encounter issues like the one described above that may be beyond one's ability to easily figure out or take more time than you readily have. Most of the problems you will likely encounter will be beyond the scope of support here and with your service provider(s). When that happens and they will, you need to secure the expertise of someone that has mastered the requisite skills, unfortunately such skills come at a price. There are lots of hidden expenses running a successful internet site. Everyone needs to ensure they have sufficient funds in their budget to be able to hire "experts" to address issues that are beyond one's ability to readily deal with on their own. Hosting plans that most folks can readily afford do not have the requisite power and configurability to be both secure and support a sufficiently large enough user base that you can generate enough revenue to offset your expenses. There is an old saying, "It takes money to make money". If you want any chance of earning a profit on your site you will need to spend some money on consultants and upgraded hosting and other products and services in order to have a platform that can support rapid user growth. Scaling a website using this software platform isn't cheap or easy but can offer a great return on one's investment of time and money "if" it is done correctly.
Solution Sirmadsen Posted June 10, 2021 Solution Posted June 10, 2021 15 hours ago, Chris Anderson said: There are over half a dozen topics already started discussing this topic. This platform is deceptively easy to install but does require an understanding of the underlying hardware and operating system/software stack in order to ensure it's secure and operates efficiently. The knowledge is readily attained through extensive internet searching but requires a great deal of one's time to master it all. Unless you have a "very" small userbase and traffic you will likely encounter issues like the one described above that may be beyond one's ability to easily figure out or take more time than you readily have. Most of the problems you will likely encounter will be beyond the scope of support here and with your service provider(s). When that happens and they will, you need to secure the expertise of someone that has mastered the requisite skills, unfortunately such skills come at a price. There are lots of hidden expenses running a successful internet site. Everyone needs to ensure they have sufficient funds in their budget to be able to hire "experts" to address issues that are beyond one's ability to readily deal with on their own. Hosting plans that most folks can readily afford do not have the requisite power and configurability to be both secure and support a sufficiently large enough user base that you can generate enough revenue to offset your expenses. There is an old saying, "It takes money to make money". If you want any chance of earning a profit on your site you will need to spend some money on consultants and upgraded hosting and other products and services in order to have a platform that can support rapid user growth. Scaling a website using this software platform isn't cheap or easy but can offer a great return on one's investment of time and money "if" it is done correctly. That's not a very helpful answer. I'm having the same error @Marco Junior Compact mode is basically a less efficient format and can't store as much information as Dynamic. You can change this in your database settings (phpadmin for example) if your database supports it and depending if you are hosting the server yourself or if you are using a web-host which might not support it or only support in a higher tier payment (as in my case) . However since it's not a critical issue you don't have to worry about it unless you have a really big community. endgrp, alistairgd66 and Marco Junior 3
Nuclear General Posted June 13, 2021 Posted June 13, 2021 On 6/9/2021 at 7:03 PM, Marco Junior said: Hello dears, I have a warning on my admincp this warning show-me a information refers to my database mode. What's this ? Compact mode ? Error: Your server does not meet our recommendations. This may prevent you from upgrading to future versions of Invision Community. You have one or more InnoDB tables that are using the `Compact` row format. This may limit the amount of data that can be stored within the table. We recommend changing it to 'Dynamic'. If you are not sure how to do this, you should contact your hosting provider or system administrator for assistance. You should contact your hosting provider or system administrator and ask them to resolve these issues. Hello, What version of MySQL are you using? Is it MariaDB 5.x.x or MariaDB 10.x.x? MariaDB 5.x.x uses ROW_FORMAT= 'COMPACT' , or 'REDUNDANT'. MariaDB 10.x.x uses ROW_FORMAT= 'COMPACT' , 'REDUNDANT' , 'DYNAMIC' , or 'COMPRESSED'. The ROW_FORMAT can be easily changed with a simple MySQL Statement. I'll show you how. 1) First, make a backup of your Database, i.e.: use phpMyAdmin, go to your database and use the OPERATIONS tab and use the "Copy Database To" section to create an exact copy, name what it whatever you'd like. Then run the following query on your copied database (Change the "DATABASE_NAME_HERE" to your copied database name) : This code will print out everything that has a table engine of "InnoDB". SELECT CONCAT('ALTER TABLE ', table_schema, '.', table_name, ' ENGINE=InnoDB;') AS sql_statements FROM information_schema.tables AS tb WHERE table_schema = 'DATABASE_NAME_HERE' AND `ENGINE` = 'InnoDB' AND `TABLE_TYPE` = 'BASE TABLE' ORDER BY table_name ASC; It will print out something similar to this: ALTER TABLE DATABASE_NAME_HERE.ibf_advertise_advertisements ENGINE=InnoDB; ALTER TABLE DATABASE_NAME_HERE.ibf_advertise_hits ENGINE=InnoDB; ALTER TABLE DATABASE_NAME_HERE.ibf_advertise_paypal ENGINE=InnoDB; ALTER TABLE DATABASE_NAME_HERE.ibf_autowelcome_members ENGINE=InnoDB; ALTER TABLE DATABASE_NAME_HERE.ibf_axenserverlist_servers ENGINE=InnoDB; ALTER TABLE DATABASE_NAME_HERE.ibf_bbcode_mediatag ENGINE=InnoDB; ALTER TABLE DATABASE_NAME_HERE.ibf_blog_blogs ENGINE=InnoDB; ALTER TABLE DATABASE_NAME_HERE.ibf_blog_categories ENGINE=InnoDB; ALTER TABLE DATABASE_NAME_HERE.ibf_blog_comments ENGINE=InnoDB; ALTER TABLE DATABASE_NAME_HERE.ibf_blog_entries ENGINE=InnoDB; In the below picture, you will get this: (As stated above) Click the +OPTIONS link, you will now see this: Make sure you click the "Full texts" radio button, leaving everything else alone, then click on 'GO'. You will now see this appear: It will show only 25 rows per page by default, but you can change that by doing this: After you have all your rows appear, copy all the text to a text editor, and do a FIND & REPLACE option for: Find: Engine=InnoDB Replace with: (If MariaDB 5.x.x) ROW_FORMAT=REDUNDANT Replace with: (If MariaDB 10.x.x) ROW_FORMAT=DYNAMIC Example: ALTER TABLE tibtech.ibf_advertise_advertisements ROW_FORMAT=DYNAMIC; ALTER TABLE tibtech.ibf_advertise_hits ROW_FORMAT=DYNAMIC; ALTER TABLE tibtech.ibf_advertise_paypal ROW_FORMAT=DYNAMIC; ALTER TABLE tibtech.ibf_autowelcome_members ROW_FORMAT=DYNAMIC; ALTER TABLE tibtech.ibf_axenserverlist_servers ROW_FORMAT=DYNAMIC; ALTER TABLE tibtech.ibf_bbcode_mediatag ROW_FORMAT=DYNAMIC; ALTER TABLE tibtech.ibf_blog_blogs ROW_FORMAT=DYNAMIC; ALTER TABLE tibtech.ibf_blog_categories ROW_FORMAT=DYNAMIC; ALTER TABLE tibtech.ibf_blog_comments ROW_FORMAT=DYNAMIC; ALTER TABLE tibtech.ibf_blog_entries ROW_FORMAT=DYNAMIC; Once the FIND & REPLACE has been done, copy all your edits and go to your database SQL tab in phpMyAdmin, and paste it in there and run SQL Statements. Your tables with now have the proper ROW_FORMAT that will satisfy Invision Community Suite and the error will go away. I hope this helps you and others with this annoying issue. Best of luck, -Donald alistairgd66, Marco Junior and Meddysong 2 1
Recommended Posts