Назад | Перейти на главную страницу

Моя база данных с использованием sql server 2005 express превышает 4 ГБ, у меня нет денег, я облажался?

Есть мысли о том, как это решить?


Я попытался создать другую базу данных и поместить туда несколько таблиц, но на самом деле есть только одна большая таблица с почти 3 миллионами строк, эта таблица использует все пространство, поэтому разделять таблицы бесполезно.

Я думал о переходе на MySQL, но (бывший) программист, который использовал эту базу данных, запрограммировал ее с помощью инфраструктуры SQL Server, и он отстой, поэтому нужно изменить много кода, который, я полагаю, можно сделать, но я не У меня столько времени.

Я ничего не могу придумать, кроме как купить sql-сервер, но у меня нет таких денег, я также думал о том, чтобы `` одолжить '' его у торрента или чего-то в этом роде, но мой сервер является выделенным сервером на gigenet и это нарушит TOS.

Спасибо

Если у вас нет денег и ваш малый бизнес испытывает трудности, MS чувствует вашу боль, они любят вас и хотят, чтобы вы придерживались sql server.

Проверьте, имеете ли вы право на получение Bizspark Программа, что означает, что вы можете получить бесплатную * версию SQL Server в Интернете, а также версию сервера Windows в Интернете.

* Я думаю, что если вы сохраните лицензию через 2 года, вы должны Microsoft 100 долларов.

Если вы не соответствуете критериям, тогда шардинг, если ваш единственный вариант, будет болезненным.

PostgreSQL имеет коннектор .NET (вы никогда не говорили, что он написан), поэтому может быть проще перейти на него, чем на MySQL.

не решение, а возможная отсрочка неизбежного: получить 180-дневную пробную версию sql server

Microsoft SQL Server Express 2008 R2 Now имеет ограничение базы данных 10 ГБ вместо ограничения в 4 ГБ в SQL 2005. Вы должны иметь возможность относительно безболезненно перейти на эту версию.

Если деньги вызывают такую ​​озабоченность, вам действительно стоит сосредоточиться на преобразовании вашего приложения для использования бесплатной базы данных, такой как MySQL или PostgreSQL. Но с учетом сказанного ...


Было бы полезно узнать немного больше о вашей ситуации. Выбор наиболее подходящего варианта лицензирования во многом зависит от того, как используется ваше приложение.

Если вы активно проектируете, разрабатываете или тестируете свое приложение, вы можете использовать версию для разработчиков, которая не имеет ограничения в 4 ГБ. Лицензия стоит недорого, и студенты могут получить ее бесплатно через Dreamspark. Если вы учитесь или занимаетесь благотворительностью, вы можете воспользоваться большими скидками.

Если указанные выше параметры к вам не относятся, было бы полезно знать, сколько пользователей будет использовать ваше приложение, чтобы вы могли выбрать между лицензированием на процессор или на сервер. Лицензирование на уровне сервера требует приобретения клиентских лицензий для каждого пользователя базы данных.

Ты мог раздел Таблица.

В основном это означает разделение данных из одной таблицы на несколько более мелких. Обычно это делается из соображений производительности, но здесь может сэкономить ваш бекон. Есть два способа сделать это:

Горизонтальное разбиение: Иметь несколько таблиц с одинаковыми схемами, с разделенными между ними строками. Например, все клиенты с почтовым индексом <50000 переходят в таблицу A, остальные идут в таблицу B. В качестве альтернативы вы можете использовать такую ​​же схему для «архивирования» старых данных в ситуациях, когда возраст данных является значительным (например, на форуме). Все записи старше месяца отправляются во вторичную (третичную и т. Д.) Базу данных с указанием местоположения в зависимости от возраста информации. Эта информация не запрашивается, если пользователь явно не запрашивает старые записи.

Вертикальное разбиение: Разделить схему таблицы таким образом, чтобы некоторые столбцы переходили в одну таблицу, а некоторые - в другую. Используйте один и тот же первичный ключ для всех таблиц, чтобы связать строки. Например, имя и адрес клиента помещаются в одну таблицу, его фотография - в другую, а его платежные данные - в другую. Обычно вы хотите разделить его, чтобы не загружать данные, на которые ссылаются реже.

Я понимаю, что это старый вопрос, но почему никто не предложил перейти на SQL 2008 Express? Он имеет ограничение на базу данных в 10 ГБ.