mirror of
https://github.com/nextcloud/documentation.git
synced 2026-01-04 02:36:49 +07:00
88 lines
2.3 KiB
ReStructuredText
88 lines
2.3 KiB
ReStructuredText
===================
|
|
Restoring Nextcloud
|
|
===================
|
|
|
|
To restore a Nextcloud installation there are four main things you need to
|
|
restore:
|
|
|
|
#. The configuration directory
|
|
#. The data directory
|
|
#. The database
|
|
#. The theme directory
|
|
|
|
.. note:: You must have both the database and data directory. You cannot
|
|
complete restoration unless you have both of these.
|
|
|
|
When you have completed your restoration, see the ``Setting Strong Directory
|
|
Permissions`` section of :doc:`../installation/installation_wizard`.
|
|
|
|
Restore Folders
|
|
---------------
|
|
|
|
.. note:: This guide assumes that your previous backup is called
|
|
"nextcloud-dirbkp"
|
|
|
|
Simply copy your configuration and data folder (or even your whole Nextcloud
|
|
install and data folder) to your Nextcloud environment. You could use this command::
|
|
|
|
rsync -Aax nextcloud-dirbkp/ nextcloud/
|
|
|
|
Restore Database
|
|
----------------
|
|
|
|
Clean Database Before Restoring
|
|
===============================
|
|
|
|
.. warning:: Before restoring a backup you need to make sure to delete all existing database tables.
|
|
|
|
The easiest way to do this is to drop and recreate the database.
|
|
SQLite does this automatically.
|
|
|
|
MySQL
|
|
^^^^^
|
|
|
|
MySQL is the recommended database engine. To restore MySQL::
|
|
|
|
mysql -h [server] -u [username] -p[password] -e "DROP DATABASE nextcloud"
|
|
mysql -h [server] -u [username] -p[password] -e "CREATE DATABASE nextcloud"
|
|
|
|
If you use UTF8 with multibyte support (e.g. for emoijs in filenames), use::
|
|
|
|
mysql -h [server] -u [username] -p[password] -e "DROP DATABASE nextcloud"
|
|
mysql -h [server] -u [username] -p[password] -e "CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci"
|
|
|
|
|
|
PostgreSQL
|
|
^^^^^^^^^^
|
|
::
|
|
|
|
PGPASSWORD="password" psql -h [server] -U [username] -d nextcloud -c "DROP DATABASE \"nextcloud\";"
|
|
PGPASSWORD="password" psql -h [server] -U [username] -d nextcloud -c "CREATE DATABASE \"nextcloud\";"
|
|
|
|
Restoring
|
|
=========
|
|
|
|
.. note:: This guide assumes that your previous backup is called
|
|
"nextcloud-sqlbkp.bak"
|
|
|
|
MySQL
|
|
^^^^^
|
|
|
|
MySQL is the recommended database engine. To restore MySQL::
|
|
|
|
mysql -h [server] -u [username] -p[password] [db_name] < nextcloud-sqlbkp.bak
|
|
|
|
SQLite
|
|
^^^^^^
|
|
::
|
|
|
|
rm data/owncloud.db
|
|
sqlite3 data/owncloud.db < nextcloud-sqlbkp.bak
|
|
|
|
PostgreSQL
|
|
^^^^^^^^^^
|
|
::
|
|
|
|
PGPASSWORD="password" pg_restore -c -d nextcloud -h [server] -U [username]
|
|
nextcloud-sqlbkp.bak
|