Painfully set the sql_mode for vtiger

cjones picture cjones · Mar 19, 2018 · Viewed 11.6k times · Source

I couldn't figure out what Vtiger was on about when it asked me to set the php.ini file to error_reporting. Even after the error_reporting had been edited to show;

error_reporting = E_WARNING & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT

The CRM still persists in telling me it requires resetting, no matter how many time I restarted apache with sudo apachectl restart

Anyway...

After moving on, I managed to get to add the database, which at first, looks straight forward, but beware! There's one more huddle to get over before you can successfully install.

You'll probably receive the command to add:

 sql_mode = ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Big headache!!

firstly, Mac OS X 10.13.* running MySQL mysql-5.7.21-macos10.13-x86_64 doesn't own /my.cnf and if like me, you're MySQL file will probably be stored in usr/local/mysql/bin/.

Stop looking, you wont find it anywhere on your Mac...

But there is light at the end of this tunnel...

Answer

cjones picture cjones · Mar 19, 2018

start up terminal and type:

sudo pico /etc/my.cnf

My.cnf will be empty. Copy and paste this in the file:

[mysqld]
sql_mode = ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Save it (ctrl-x and hit y to accept saving the file) and exit, back into terminal.

Type:

sudo touch /etc/my.cnf

Then run mysql; mysql -u root -p

and check the entry,

SHOW VARIABLES LIKE 'sql_mode';

The result should show the settings you added to my.cnf

Now return to vtiger and continue the installation and it should work :)