diff --git a/core/core.services.yml b/core/core.services.yml
index 802d143..f12fedd 100644
--- a/core/core.services.yml
+++ b/core/core.services.yml
@@ -21,13 +21,13 @@ services:
     factory_method: get
     factory_service: cache_factory
     arguments: [config]
-  cache.cache:
+  cache.default:
     class: Drupal\Core\Cache\CacheBackendInterface
     tags:
       - { name: cache.bin }
     factory_method: get
     factory_service: cache_factory
-    arguments: [cache]
+    arguments: [default]
   cache.entity:
     class: Drupal\Core\Cache\CacheBackendInterface
     tags:
@@ -142,7 +142,7 @@ services:
     class: Drupal\Core\Path\AliasWhitelist
     tags:
       - { name: needs_destruction }
-    arguments: [path_alias_whitelist, '@cache.cache', '@lock', '@state', '@database']
+    arguments: [path_alias_whitelist, '@cache.default', '@lock', '@state', '@database']
   path.alias_manager:
     class: Drupal\Core\Path\AliasManager
     arguments: ['@path.crud', '@path.alias_whitelist', '@language_manager']
@@ -176,16 +176,16 @@ services:
       - { name: persist }
   default_plugin_manager:
     abstract: true
-    arguments: ['@container.namespaces', '@cache.cache', '@language_manager', '@module_handler']
+    arguments: ['@container.namespaces', '@cache.default', '@language_manager', '@module_handler']
   module_handler:
     class: Drupal\Core\Extension\CachedModuleHandler
     arguments: ['%container.modules%', '@state', '@cache.bootstrap']
   theme_handler:
     class: Drupal\Core\Extension\ThemeHandler
-    arguments: ['@config.factory', '@module_handler', '@cache.cache', '@info_parser', '@config.installer', '@router.builder']
+    arguments: ['@config.factory', '@module_handler', '@cache.default', '@info_parser', '@config.installer', '@router.builder']
   entity.manager:
     class: Drupal\Core\Entity\EntityManager
-    arguments: ['@container.namespaces', '@service_container', '@module_handler', '@cache.cache', '@language_manager', '@string_translation']
+    arguments: ['@container.namespaces', '@service_container', '@module_handler', '@cache.default', '@language_manager', '@string_translation']
     tags:
       - { name: plugin_manager_cache_clear }
   entity.form_builder:
@@ -208,13 +208,13 @@ services:
     arguments: ['@container.namespaces']
   plugin.manager.menu.local_action:
     class: Drupal\Core\Menu\LocalActionManager
-    arguments: ['@controller_resolver', '@request', '@router.route_provider', '@module_handler', '@cache.cache', '@language_manager', '@access_manager', '@current_user']
+    arguments: ['@controller_resolver', '@request', '@router.route_provider', '@module_handler', '@cache.default', '@language_manager', '@access_manager', '@current_user']
   plugin.manager.menu.local_task:
     class: Drupal\Core\Menu\LocalTaskManager
-    arguments: ['@controller_resolver', '@request', '@router.route_provider', '@router.builder', '@module_handler', '@cache.cache', '@language_manager', '@access_manager', '@current_user']
+    arguments: ['@controller_resolver', '@request', '@router.route_provider', '@router.builder', '@module_handler', '@cache.default', '@language_manager', '@access_manager', '@current_user']
   plugin.manager.menu.contextual_link:
     class: Drupal\Core\Menu\ContextualLinkManager
-    arguments: ['@controller_resolver', '@module_handler', '@cache.cache', '@language_manager', '@access_manager', '@current_user']
+    arguments: ['@controller_resolver', '@module_handler', '@cache.default', '@language_manager', '@access_manager', '@current_user']
   plugin.cache_clearer:
     class: Drupal\Core\Plugin\CachedDiscoveryClearer
   request:
@@ -597,7 +597,7 @@ services:
     arguments: ['@database', '@request']
   plugin.manager.mail:
     class: Drupal\Core\Mail\MailManager
-    arguments: ['@container.namespaces', '@cache.cache', '@language_manager', '@module_handler', '@config.factory']
+    arguments: ['@container.namespaces', '@cache.default', '@language_manager', '@module_handler', '@config.factory']
   plugin.manager.condition:
     class: Drupal\Core\Condition\ConditionManager
     parent: default_plugin_manager
@@ -613,7 +613,7 @@ services:
       - { name: event_subscriber }
   image.toolkit.manager:
     class: Drupal\Core\ImageToolkit\ImageToolkitManager
-    arguments: ['@container.namespaces', '@cache.cache', '@language_manager', '@config.factory', '@module_handler']
+    arguments: ['@container.namespaces', '@cache.default', '@language_manager', '@config.factory', '@module_handler']
   image.factory:
     class: Drupal\Core\Image\ImageFactory
     arguments: ['@image.toolkit.manager']
@@ -692,7 +692,7 @@ services:
     class: Zend\Feed\Writer\Extension\WellFormedWeb\Renderer\Entry
   theme.registry:
     class: Drupal\Core\Theme\Registry
-    arguments: ['@cache.cache', '@lock', '@module_handler']
+    arguments: ['@cache.default', '@lock', '@module_handler']
     tags:
       - { name: needs_destruction }
   authentication:
diff --git a/core/lib/Drupal.php b/core/lib/Drupal.php
index a646096..3896b2f 100644
--- a/core/lib/Drupal.php
+++ b/core/lib/Drupal.php
@@ -221,12 +221,12 @@ public static function database() {
    *
    * @param string $bin
    *   (optional) The cache bin for which the cache object should be returned,
-   *   defaults to 'cache'.
+   *   defaults to 'default'.
    *
    * @return \Drupal\Core\Cache\CacheBackendInterface
    *   The cache object associated with the specified bin.
    */
-  public static function cache($bin = 'cache') {
+  public static function cache($bin = 'default') {
     return static::$container->get('cache.' . $bin);
   }
 
diff --git a/core/lib/Drupal/Core/Cache/CacheFactory.php b/core/lib/Drupal/Core/Cache/CacheFactory.php
index b756e91..7f061e5 100644
--- a/core/lib/Drupal/Core/Cache/CacheFactory.php
+++ b/core/lib/Drupal/Core/Cache/CacheFactory.php
@@ -50,7 +50,7 @@ function __construct(Settings $settings) {
    */
   public function get($bin) {
     $cache_settings = $this->settings->get('cache');
-    if (isset($cache_settings[$bin])) {
+    if (isset($cache_settings['bins'][$bin])) {
       $service_name = $cache_settings[$bin];
     }
     elseif (isset($cache_settings['default'])) {
diff --git a/core/lib/Drupal/Core/Cache/DatabaseBackend.php b/core/lib/Drupal/Core/Cache/DatabaseBackend.php
index 4f98c50..1ac3a5e 100644
--- a/core/lib/Drupal/Core/Cache/DatabaseBackend.php
+++ b/core/lib/Drupal/Core/Cache/DatabaseBackend.php
@@ -40,11 +40,9 @@ class DatabaseBackend implements CacheBackendInterface {
    *   The cache bin for which the object is created.
    */
   public function __construct(Connection $connection, $bin) {
-    // All cache tables should be prefixed with 'cache_', except for the
-    // default 'cache' bin.
-    if ($bin != 'cache') {
-      $bin = 'cache_' . $bin;
-    }
+    // All cache tables should be prefixed with 'cache_'.
+    $bin = 'cache_' . $bin;
+
     $this->bin = $bin;
     $this->connection = $connection;
   }
diff --git a/core/lib/Drupal/Core/DependencyInjection/UpdateServiceProvider.php b/core/lib/Drupal/Core/DependencyInjection/UpdateServiceProvider.php
index 4776214..aa3c709 100644
--- a/core/lib/Drupal/Core/DependencyInjection/UpdateServiceProvider.php
+++ b/core/lib/Drupal/Core/DependencyInjection/UpdateServiceProvider.php
@@ -43,7 +43,7 @@ public function register(ContainerBuilder $container) {
       $container->register('theme_handler', 'Drupal\Core\Extension\ThemeHandler')
         ->addArgument(new Reference('config.factory'))
         ->addArgument(new Reference('module_handler'))
-        ->addArgument(new Reference('cache.cache'))
+        ->addArgument(new Reference('cache.default'))
         ->addArgument(new Reference('info_parser'));
     }
   }
diff --git a/core/lib/Drupal/Core/Entity/EntityManager.php b/core/lib/Drupal/Core/Entity/EntityManager.php
index c7c111c..376ebff 100644
--- a/core/lib/Drupal/Core/Entity/EntityManager.php
+++ b/core/lib/Drupal/Core/Entity/EntityManager.php
@@ -143,7 +143,7 @@ public function __construct(\Traversable $namespaces, ContainerInterface $contai
     $this->discovery = new AnnotatedClassDiscovery('Entity', $namespaces, 'Drupal\Core\Entity\Annotation\EntityType');
     $this->discovery = new InfoHookDecorator($this->discovery, 'entity_type_build');
     $this->discovery = new AlterDecorator($this->discovery, 'entity_type');
-    $this->discovery = new CacheDecorator($this->discovery, 'entity_type:' . $this->languageManager->getCurrentLanguage()->id, 'cache', Cache::PERMANENT, array('entity_types' => TRUE));
+    $this->discovery = new CacheDecorator($this->discovery, 'entity_type:' . $this->languageManager->getCurrentLanguage()->id, 'default', Cache::PERMANENT, array('entity_types' => TRUE));
 
     $this->container = $container;
   }
diff --git a/core/lib/Drupal/Core/Installer/InstallerServiceProvider.php b/core/lib/Drupal/Core/Installer/InstallerServiceProvider.php
index 2389a62..bd23412 100644
--- a/core/lib/Drupal/Core/Installer/InstallerServiceProvider.php
+++ b/core/lib/Drupal/Core/Installer/InstallerServiceProvider.php
@@ -30,7 +30,7 @@ public function register(ContainerBuilder $container) {
     $container->register('config.storage', 'Drupal\Core\Config\InstallStorage');
 
     // Replace services with in-memory implementations.
-    foreach (array('bootstrap', 'config', 'cache', 'menu', 'page', 'path') as $bin) {
+    foreach (array('bootstrap', 'config', 'default', 'menu', 'page', 'path') as $bin) {
       $container
         ->register("cache.$bin", 'Drupal\Core\Cache\MemoryBackend')
         ->addArgument($bin);
diff --git a/core/lib/Drupal/Core/Plugin/Discovery/CacheDecorator.php b/core/lib/Drupal/Core/Plugin/Discovery/CacheDecorator.php
index 9d3cc9a..e5bdffd 100644
--- a/core/lib/Drupal/Core/Plugin/Discovery/CacheDecorator.php
+++ b/core/lib/Drupal/Core/Plugin/Discovery/CacheDecorator.php
@@ -75,7 +75,7 @@ class CacheDecorator implements CachedDiscoveryInterface {
    * @param array $cache_tags
    *   The cache tags associated with the definition list.
    */
-  public function __construct(DiscoveryInterface $decorated, $cache_key, $cache_bin = 'cache', $cache_expire = Cache::PERMANENT, array $cache_tags = array()) {
+  public function __construct(DiscoveryInterface $decorated, $cache_key, $cache_bin = 'default', $cache_expire = Cache::PERMANENT, array $cache_tags = array()) {
     $this->decorated = $decorated;
     $this->cacheKey = $cache_key;
     $this->cacheBin = $cache_bin;
diff --git a/core/modules/aggregator/aggregator.services.yml b/core/modules/aggregator/aggregator.services.yml
index 335ed77..eed8d20 100644
--- a/core/modules/aggregator/aggregator.services.yml
+++ b/core/modules/aggregator/aggregator.services.yml
@@ -1,10 +1,10 @@
 services:
   plugin.manager.aggregator.fetcher:
     class: Drupal\aggregator\Plugin\AggregatorPluginManager
-    arguments: [fetcher, '@container.namespaces', '@cache.cache', '@language_manager', '@module_handler']
+    arguments: [fetcher, '@container.namespaces', '@cache.default', '@language_manager', '@module_handler']
   plugin.manager.aggregator.parser:
     class: Drupal\aggregator\Plugin\AggregatorPluginManager
-    arguments: [parser, '@container.namespaces', '@cache.cache', '@language_manager', '@module_handler']
+    arguments: [parser, '@container.namespaces', '@cache.default', '@language_manager', '@module_handler']
   plugin.manager.aggregator.processor:
     class: Drupal\aggregator\Plugin\AggregatorPluginManager
-    arguments: [processor, '@container.namespaces', '@cache.cache', '@language_manager', '@module_handler']
+    arguments: [processor, '@container.namespaces', '@cache.default', '@language_manager', '@module_handler']
diff --git a/core/modules/config_translation/config_translation.services.yml b/core/modules/config_translation/config_translation.services.yml
index 47a0bf6..f4ed510 100644
--- a/core/modules/config_translation/config_translation.services.yml
+++ b/core/modules/config_translation/config_translation.services.yml
@@ -20,7 +20,7 @@ services:
   plugin.manager.config_translation.mapper:
     class: Drupal\config_translation\ConfigMapperManager
     arguments:
-      - '@cache.cache'
+      - '@cache.default'
       - '@language_manager'
       - '@module_handler'
       - '@config.typed'
diff --git a/core/modules/language/language.services.yml b/core/modules/language/language.services.yml
index 422644a..a45870d 100644
--- a/core/modules/language/language.services.yml
+++ b/core/modules/language/language.services.yml
@@ -1,7 +1,7 @@
 services:
   plugin.manager.language_negotiation_method:
     class: Drupal\language\LanguageNegotiationMethodManager
-    arguments: ['@container.namespaces', '@cache.cache', '@module_handler']
+    arguments: ['@container.namespaces', '@cache.default', '@module_handler']
   language_negotiator:
     class: Drupal\language\LanguageNegotiator
     arguments: ['@language_manager', '@plugin.manager.language_negotiation_method', '@config.factory', '@settings']
diff --git a/core/modules/locale/locale.services.yml b/core/modules/locale/locale.services.yml
index b5f4cf4..a6a4108 100644
--- a/core/modules/locale/locale.services.yml
+++ b/core/modules/locale/locale.services.yml
@@ -12,7 +12,7 @@ services:
     arguments: ['@database']
   string_translator.locale.lookup:
     class: Drupal\locale\LocaleTranslation
-    arguments: ['@locale.storage', '@cache.cache', '@lock', '@config.factory']
+    arguments: ['@locale.storage', '@cache.default', '@lock', '@config.factory']
     tags:
       - { name: string_translator }
       - { name: needs_destruction }
diff --git a/core/modules/migrate/migrate.services.yml b/core/modules/migrate/migrate.services.yml
index 4112da5..068dde6 100644
--- a/core/modules/migrate/migrate.services.yml
+++ b/core/modules/migrate/migrate.services.yml
@@ -8,19 +8,19 @@ services:
     arguments: [migrate]
   plugin.manager.migrate.source:
     class: Drupal\migrate\Plugin\MigratePluginManager
-    arguments: [source, '@container.namespaces', '@cache.cache', '@language_manager', '@module_handler', 'Drupal\migrate\Annotation\MigrateSource']
+    arguments: [source, '@container.namespaces', '@cache.default', '@language_manager', '@module_handler', 'Drupal\migrate\Annotation\MigrateSource']
   plugin.manager.migrate.process:
     class: Drupal\migrate\Plugin\MigratePluginManager
-    arguments: [process, '@container.namespaces', '@cache.cache', '@language_manager', '@module_handler', 'Drupal\migrate\Annotation\MigrateProcessPlugin']
+    arguments: [process, '@container.namespaces', '@cache.default', '@language_manager', '@module_handler', 'Drupal\migrate\Annotation\MigrateProcessPlugin']
   plugin.manager.migrate.destination:
     class: Drupal\migrate\Plugin\MigrateDestinationPluginManager
-    arguments: [destination, '@container.namespaces', '@cache.cache', '@language_manager', '@module_handler', '@entity.manager']
+    arguments: [destination, '@container.namespaces', '@cache.default', '@language_manager', '@module_handler', '@entity.manager']
   plugin.manager.migrate.id_map:
     class: Drupal\migrate\Plugin\MigratePluginManager
-    arguments: [id_map, '@container.namespaces', '@cache.cache', '@language_manager', '@module_handler']
+    arguments: [id_map, '@container.namespaces', '@cache.default', '@language_manager', '@module_handler']
   plugin.manager.migrate.entity_field:
     class: Drupal\migrate\Plugin\MigratePluginManager
-    arguments: [entity_field, '@container.namespaces', '@cache.cache', '@language_manager', '@module_handler']
+    arguments: [entity_field, '@container.namespaces', '@cache.default', '@language_manager', '@module_handler']
   password_migrate:
     class: Drupal\migrate\MigratePassword
     arguments: ['@password_original']
diff --git a/core/modules/rest/rest.services.yml b/core/modules/rest/rest.services.yml
index 7c63426..915a896 100644
--- a/core/modules/rest/rest.services.yml
+++ b/core/modules/rest/rest.services.yml
@@ -18,7 +18,7 @@ services:
     arguments: ['@rest.link_manager.type', '@rest.link_manager.relation']
   rest.link_manager.type:
     class: Drupal\rest\LinkManager\TypeLinkManager
-    arguments: ['@cache.cache']
+    arguments: ['@cache.default']
   rest.link_manager.relation:
     class: Drupal\rest\LinkManager\RelationLinkManager
-    arguments: ['@cache.cache']
+    arguments: ['@cache.default']
diff --git a/core/modules/system/lib/Drupal/system/Tests/Theme/RegistryTest.php b/core/modules/system/lib/Drupal/system/Tests/Theme/RegistryTest.php
index ac02c07..ea275c7 100644
--- a/core/modules/system/lib/Drupal/system/Tests/Theme/RegistryTest.php
+++ b/core/modules/system/lib/Drupal/system/Tests/Theme/RegistryTest.php
@@ -40,7 +40,7 @@ function testRaceCondition() {
 
     // Directly instantiate the theme registry, this will cause a base cache
     // entry to be written in __construct().
-    $cache = \Drupal::cache('cache');
+    $cache = \Drupal::cache();
     $lock_backend = \Drupal::lock();
     $registry = new ThemeRegistry($cid, $cache, $lock_backend, array('theme_registry' => TRUE), $this->container->get('module_handler')->isLoaded());
 
diff --git a/core/modules/system/tests/modules/condition_test/lib/Drupal/condition_test/FormController.php b/core/modules/system/tests/modules/condition_test/lib/Drupal/condition_test/FormController.php
index 57c3009..67ff7c6 100644
--- a/core/modules/system/tests/modules/condition_test/lib/Drupal/condition_test/FormController.php
+++ b/core/modules/system/tests/modules/condition_test/lib/Drupal/condition_test/FormController.php
@@ -33,7 +33,7 @@ public function getFormId() {
    * Constructs a \Drupal\condition_test\FormController object.
    */
   public function __construct() {
-    $manager = new ConditionManager(\Drupal::service('container.namespaces'), \Drupal::cache('cache'), \Drupal::service('language_manager'), \Drupal::moduleHandler());
+    $manager = new ConditionManager(\Drupal::service('container.namespaces'), \Drupal::cache(), \Drupal::service('language_manager'), \Drupal::moduleHandler());
     $this->condition = $manager->createInstance('node_type');
   }
 
diff --git a/core/modules/system/tests/modules/plugin_test/lib/Drupal/plugin_test/Plugin/CachedMockBlockManager.php b/core/modules/system/tests/modules/plugin_test/lib/Drupal/plugin_test/Plugin/CachedMockBlockManager.php
index 29634e2..df79b31 100644
--- a/core/modules/system/tests/modules/plugin_test/lib/Drupal/plugin_test/Plugin/CachedMockBlockManager.php
+++ b/core/modules/system/tests/modules/plugin_test/lib/Drupal/plugin_test/Plugin/CachedMockBlockManager.php
@@ -25,6 +25,6 @@ public function __construct() {
     // The CacheDecorator allows us to cache these plugin definitions for
     // quicker retrieval. In this case we are generating a cache key by
     // language.
-    $this->discovery = new CacheDecorator($this->discovery, 'mock_block:' . \Drupal::languageManager()->getCurrentLanguage()->id, 'cache',  1542646800, array('plugin_test'));
+    $this->discovery = new CacheDecorator($this->discovery, 'mock_block:' . \Drupal::languageManager()->getCurrentLanguage()->id, 'default',  1542646800, array('plugin_test'));
   }
 }
diff --git a/core/modules/user/user.services.yml b/core/modules/user/user.services.yml
index 36d1e79..3d75aa7 100644
--- a/core/modules/user/user.services.yml
+++ b/core/modules/user/user.services.yml
@@ -32,7 +32,7 @@ services:
       - { name: theme_negotiator, priority: -40 }
   user.permissions_hash:
     class: Drupal\user\PermissionsHash
-    arguments: ['@private_key', '@cache.cache']
+    arguments: ['@private_key', '@cache.default']
   user.auth:
     class: Drupal\user\UserAuth
     arguments: ['@entity.manager', '@password']
