Version: Freepbx 14
If your system has run out of disk space, start by confirming that ibdata1 is the culprit.
A backup is recommended if you still have enough disk space to perform it. A disk that is maxed out will not be able to run the backup task.
SSH into your system using
Putty
or similar terminal software and check your disk. Username: root
Show disk info: df -h
cd /var/lib/mysql
du -shx ./* | sort -h
If ibdata1 is consuming all your data, it will show up as the largest file in this directory
Now that you’ve confirmed ibdata1 is consuming all your hard drive space, you need to shutdown services
fwconsole stop
You might also ensure MySQL is stopped
service mysqld stop
systemctl stop mariadb
Download a database tool such as
dBeaver
and connect it to your PBX MySQL database
Open DBeaver > Connect > Main tab
Server host: localhost
Port: 3306
Database: leave empty
Username: root
Password: leave empty
Local Client: MySQL Binaries
Click on the SSH Tab:
Host/IP: Enter IP of your PBX
Port: 22
Username: root
Password: yourrootpassword
Test for proper function and save the connection
Find out which table is eating up all the disk space by expanding it and looking for the file size. Likely cause is Databases > asteriskcdrdb > cel
Remove the data in a table:
Right click on the table > Tools > Truncate
Export the tables to you PC for importing later on
Right click on a table > Tools > Dump Database > Select Databases to dump (Make sure to include the schema tables) > Next > Select Output folder to a location on your PC > Start
Browse to the folder on your PC and confirm that you have a .sql file for each table.
Delete the ibdata1 ib_logfile0 and ib_logfile1 files
cd /var/lib/mysql
rm ib-logfile0
rm ib-logfile1
rm ibdata1
Restart the PBX. This will create a new ibdata1 & log files
shutdown -r now
Go back to dBeaver and restore the previously dumped / truncated tables to the new database
dbeaverRestore
604×821 33.2 KB
Confirm your database has all it’s tables by running this command from the SSH Terminal:
mysqlshow
Restart the PBX again
shutdown -r now
From SSH console confirm new database is reduced in size
Show disk info: df -h
cd /var/lib/mysql
du -shx ./* | sort -h
Browse to the PBX GUI and make sure the system settings all look good.
Access MySQL from your SSH console
mysql -u root -p
Running out of disk space can be catastrophic for mysql and lots of other things, I would install
logwatch
and make sure you are getting it’s emails. It will warn you way before you get into deep doo-doo
Consider purging old asteriskcdrdb.cel records on a timely fashion, they can get big.