Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL:Много таблици или много бази данни?

Не трябва да има значителна разлика в производителността между множество таблици в една база данни спрямо множество таблици в отделни бази данни.

В MySQL базите данни (стандартният SQL използва термина "схема" за това) служат главно като пространство от имена за таблици. Базата данни има само няколко атрибута, напр. набора от символи и сортиране по подразбиране. И това използване на GRANT прави удобно да се контролират привилегиите за достъп за база данни, но това няма нищо общо с производителността.

Можете да получите достъп до таблици във всяка база данни от една връзка (при условие, че се управляват от същия екземпляр на MySQL Server). Просто трябва да квалифицирате името на таблицата:

SELECT * FROM database17.accounts_table;

Това е чисто синтактична разлика. Това не трябва да има ефект върху производителността.

По отношение на съхранението, не можете да организирате таблици във файл на база данни, както спекулира @Chris. С механизма за съхранение MyISAM винаги имате файл за всяка таблица. С механизма за съхранение InnoDB имате или един набор от файлове за съхранение, които обединяват всички таблици, или пък имате файл за таблица (това е конфигурирано за целия MySQL сървър, а не за база данни). И в двата случая няма предимство или недостатък в производителността при създаването на таблиците в една база данни спрямо много бази данни.

Няма много конфигурационни параметри на MySQL, които работят за база данни. Повечето параметри, които влияят върху производителността на сървъра, са в обхвата на целия сървър.

По отношение на архивирането, можете да посочите подмножество от таблици като аргументи за mysqldump команда. Може да е по-удобно да архивирате логически набори от таблици за база данни, без да се налага да наименувате всички таблици в командния ред. Но това не трябва да има разлика за производителността, а само удобство за вас, докато въвеждате командата за архивиране.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - Как да ПОРЪЧАТЕ ПО РЕЛЕВНОСТ? INNODB таблица

  2. Свържете се с Docker MySQL контейнер от localhost?

  3. Срив на MySQL Innodb

  4. Как да върнете JSON обект от PHP за четене от приложението за Android

  5. Сравняване на Oracle MySQL, Percona Server и MariaDB