In WordPress, most migrations can be easily done by:
- Using a web-based utility such as Migrate DB Pro or PhpMyAdmin,
- Using a database front-end application like TablePlus,
- Or even using the
mysql
command-line for importing an SQL dump.
None of these are bad options but each present their own set of challenges especially with large migrations:
- web-based applications can timeout,
- front-end applications may lack some functionality for getting insight into what’s going on (or not giving clear information on what something such as a lock is during its process list),
- and terminal applications like
mysql
can do the job but give very little insight on to where to status of the import stands.
If you’re working with a relatively small dataset, then any of the above options would be fine (and I’m usually partial to TablePlus 🙂) or the command-line but when importing a database that was roughly 30GB in size, I needed something else to help.
- A web application would time out,
- A front-end application lacked feedback on time or progress,
- A terminal application was just waiting for the process to finish with no insight as to what’s going on.
And this is where pv
comes into play.