1
1
Fork 0

modified: doc/Home.md

modified:   doc/Migrate.md
This commit is contained in:
Andy H 2020-11-28 18:08:20 +07:00
parent 6e579e82e6
commit 5866e7e0ff
2 changed files with 16 additions and 19 deletions

View file

@ -35,7 +35,7 @@ Friendica Documentation and Resources
* [Using SSL with Friendica](help/SSL) * [Using SSL with Friendica](help/SSL)
* [Config values that can only be set in config/local.config.php](help/Config) * [Config values that can only be set in config/local.config.php](help/Config)
* [Improve Performance](help/Improve-Performance) * [Improve Performance](help/Improve-Performance)
* [Migrate to new server](help/Migrate) * [Migrate](help/Migrate)
* [Administration Tools](help/tools) * [Administration Tools](help/tools)
**Developer Manual** **Developer Manual**

View file

@ -1,4 +1,4 @@
Migrating to a new server Migrating to a new server installation
=============== ===============
* [Home](help) * [Home](help)
@ -8,18 +8,17 @@ Migrating to a new server
### New server ### New server
Set up your new server as described [here](Install); follow the installation procedure until you have created a database. Set up your new server as described [here](Install); follow the installation procedure until you have created a database.
### Head up to users ### Heads up to users
Inform your users of an upcoming interruption to your service. To ensure data consistency, your server needs to be offline during some steps of the migration processes.
Inform your users of an upcoming interruption to your service. To ensure no loss of data, your server needs to be offline during some part of the migration processes. You may also find these addons useful for communicating with your users prior to the migration process:
You may find these addons useful for in communicating with your users prior to the migration process:
* blackout * blackout
* notifyall * notifyall
### Storage ### Storage
Check your storage backend with ``bin/console storage list`` in the root folder. The output should be like this: Check your storage backend with ``bin/console storage list`` in the root folder. The output should look like this:
```` ````
Sel | Name Sel | Name
----------------------- -----------------------
@ -35,10 +34,9 @@ If you are *not* using ``Database`` run the following commands:
This process may take a long time depending on the size of your storage and your server's capacity. Prior to initiating this process, you may want to check the number of files in the storage with the following command: ``tree -if -I index.html /path/to/storage/``. This process may take a long time depending on the size of your storage and your server's capacity. Prior to initiating this process, you may want to check the number of files in the storage with the following command: ``tree -if -I index.html /path/to/storage/``.
### Cleaning up ### Cleaning up
Before transferring your database, you may want to clean it up; ensure the expiration of database items is set to a reasonable value and activated via the administrator panel. *Admin* > *Site* > *Performance* > Enable "Clean up database"
Before transferring your database, you may want to clean it up by ensuring the expiration of items is set to reasonable values in the administrator panel. *Admin* > *Site* > *Performance* > Enable "Clean up database" After adjusting these settings, the database cleaning up processes will be initiated according to your configured daily cron job.
After adjusting these settings, the database cleaning up processes will be initiated according to your configured daily cron time frame.
To review the size of your database, log into MySQL with ``mysql -p`` run the following query: To review the size of your database, log into MySQL with ``mysql -p`` run the following query:
``SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 / 1024 AS "Size (GB)" FROM information_schema.TABLES GROUP BY table_schema;`` ``SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 / 1024 AS "Size (GB)" FROM information_schema.TABLES GROUP BY table_schema;``
@ -56,24 +54,23 @@ You should see an output like this:
Finally, you may also want to optimise your database with the following command: Finally, you may also want to optimise your database with the following command:
``mysqloptimize -p friendica-db`` ``mysqloptimize -p friendica-db``
### Go offline ### Going offline
Take your web server offline. This will ensure consistency of your users' data. Stop background tasks and put your server in maintenance mode.
1. If you had set up a worker cron job like this ``*/10 * * * * cd /home/myname/mywebsite; /usr/bin/php bin/worker.php`` run ``crontab -e`` and comment out this line. Alternatively if you deploy a worker daemon, disable this instead.
2. Put your server into maintenance mode with a command like this: ``bin/console maintenance 1 "We are currently upgrading our system and will be back soon."``
## Dumping DB ## Dumping DB
Dump you database: ``mysqldump -p friendica_db > friendica_db-$(date +%Y%m%d).sql`` Dump you database: ``mysqldump -p friendica_db > friendica_db-$(date +%Y%m%d).sql``
and possibly compress it. and possibly compress it.
## Transferring to new installation ## Transferring to new server
Transfer your database and a copy of your configuration file ``config/local.config.php-copy`` to your new server installation.
Transfer your database and a copy of your configuration file ``config/local.config.php-copy`` to your new server.
## Restore your DB
## Restoring your DB
Import your database on your new server: ``mysql -p friendica_db < your-friendica_db-file.sql`` Import your database on your new server: ``mysql -p friendica_db < your-friendica_db-file.sql``
## Completing installation process ## Completing installation process
Ensure your DNS settings point to your new server. Ensure your DNS settings point to your new server.
Complete the installation by adjusting the configuration settings and set up the required daily cron job. Complete the installation by adjusting the configuration settings and set up the required daily cron job.