Change record status: 
Project: 
Introduced in branch: 
8.2.x
Introduced in version: 
8.2
Description: 

Per-table prefixes are deprecated as of Drupal 8.2, will be removed before the release of Drupal 10.0. After that, only a single prefix for all tables will be supported.

Alternatives to per-table prefixing

  1. User, session and/or userrole sharing between sites. The alternatives for this are modules that take over the authentication from Drupal core. A few examples of modules that will do that are: Lightweight Directory Access Protocol (LDAP), CAS, simpleSAMLphp Authentication, OpenID Connect and Bakery Single Sign-On System.
  2. Advanced use-cases where a table needs to be copied or migrated, but you want to use core APIs: for this case you can create a new database connection with a different global prefix, then inject this into the classes you need to use - which will read from the prefixed tables
  3. Content and/or config synchronization between sites. Config synchronization is supported by Drupal core. See https://www.drupal.org/documentation/administer/config for more info. Content synchronization is a bit more difficult. At the moment we have an initiative for supporting content synchronization in Drupal core. See #2721129: Workflow Initiative and http://buytaert.net/improving-drupal-content-workflow for more info.
    An alternative is to use the domain module. It uses a low-key way of of sharing content between sites.
    Yet an other alternative is the deploy module. It uses a high-level content staging mechanism to copy content between sites.
Impacts: 
Site builders, administrators, editors