How to repair crashed mysql table in vicidial
Topic : Repairing crashed MySQL table in vicidial
In this blogpost i have provided the mysql repair command to repair and optimize the crashed tables in vicidial mysql or maridb databases, which is crashed due to overload or improper shutdown of servers.
Overview: Vicidial mysql repair and optimization
Vicidial database often crashed due to various reasons ,which leads to improper dialing, no leads in hopper issues, agent session timeout etc. Thanks to mysqlcheck command which is used to repair and optimize the mysql tables.
you may notice below error while logging into admin or agent portal ,which alerts the mysql database has been crashed
"Can't connect to local MYSQL server through socket- mysql.sock"
Root cause for Vicidial Database Corrupt
Below are the root causes of MYSQL database crash or corrupt.
1. Server Over Load
2. Server Improper Shutdown
3. Server Low Disk Space
Impact of Vicidial mysql crash/corrupt
1. Agent-your session has been disabled
2. Autodial calls not landing to Agents.
3. realtime report not updating properly
4. agent error
5. vicidail Time sync error
Vicidial Mysql database repair command
Using the mysqlcheck command you can repair and optimize the crashed vicidial mysql database and tables using the labels like --check , --auto-repair and --optimize, below i have listed the mysql repair command for various vicidial platforms.
mysqlcheck -p --check asterisk
mysqlcheck -p --auto-repair asterisk
mysqlcheck -p --optimize asterisk
If the above command failed to Repair a particular table, identify the corrupted table and run the below command.
This method is used to force repair the crashed mysql tables ,which may leads to data loss.
mysql -p
mysql>use asterisk
mysql>REPAIR table table_name USE_FRM;
eg: REPAIR table vicidial_live_agents USE_FRM;
Note: by default mysql root password is not set in vicibox, that is just press enter after mysql -p, if not working use mysql -ucront -p with password 1234
For Goautodial/ Vicidial scratch installs run below command
mysqlcheck -u root -p --auto-repair --check --optimize --all-databasesnote: if you using goautodial then the password will be goautodial, if not working then use below command, which uses default vicidial mysql credentials
mysqlcheck -u cron -p --auto-repair --check --optimize --all-databasespassword will be : 1234
note: the default password of vicidial mysql logins.
Error:: mysqlcheck doesn't support multiple contradicting commands.
Run the below commandsmysqlcheck -u root -p --auto-repair --all-databases
mysqlcheck -u root -p --optimize --all-databases
Sample mysql check command output
Error : Incorrect file format 'vicidial_live_agents'
error : Corrupt
asterisk.vicidial_manager
Error : Incorrect file format 'vicidial_manager'
error : Corrupt
mysqlcheck -u cron -p --auto-repair --all-databases
pass:1234
mysqlcheck -u cron -p --check --all-databases
pass:1234
mysqlcheck -u cron -p --optimize --all-databases
pass:1234
/usr/share/astguiclient/AST_DB_optimize.pl --debug
Hello Sir, As per your documentation, i have installed vicidial with asterisk 13 in centos . Sir, I am unable to get full administrator details and not able to access php my admin too sir. I searched your blog related maria DB commands, I have not found that stuff in your blog sir. Any solution for this sir?
mysqlcheck -u cron -p --auto-repair --check --optimize --all-databases
working thanks
VICIBOX auto repair command?