For anyone looking for a quick and dirty way to export all custom block data from site A and import it into site B (IMPORTANT: This will overwrite any custom block content on site B):
On site A:
Make a directory to put migration data in:
mkdir block_migration
Export block specific tables to individual files:
mysqldump -u mysql_username -p database_name block_content > block_migration/block_content.sql
mysqldump -u mysql_username -p database_name block_content__body > block_migration/block_content__body.sql
mysqldump -u mysql_username -p database_name block_content_field_data > block_migration/block_content_field_data.sql
mysqldump -u mysql_username -p database_name block_content_field_revision > block_migration/block_content_field_revision.sql
mysqldump -u mysql_username -p database_name block_content_revision > block_migration/block_content_revision.sql
mysqldump -u mysql_username -p database_name block_content_revision__body > block_migration/block_content_revision__body.sql
Transfer these new sql files to Site B via git or other method. If you're doing this often, you could even get fancy and put the above mysqldump commands into a pre-commit hook.
On Site B:
Assuming you've pulled in the code that contains the table drop/create logic we exported above, import the tables into your database:
mysql -u mysql_username -p database_name < block_migration/block_content.sql
mysql -u mysql_username -p database_name < block_migration/block_content__body.sql
mysql -u mysql_username -p database_name < block_migration/block_content_field_data.sql
mysql -u mysql_username -p database_name < block_migration/block_content_field_revision.sql
mysql -u mysql_username -p database_name < block_migration/block_content_revision.sql
mysql -u mysql_username -p database_name < block_migration/block_content_revision__body.sql
Clearing your caches is always a good idea. If you're using drush:
drush cr