- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
У меня дедик, вполне мощный и мне нужно ооочень много баз данных. Но вот случилось такое
root@xxx:/root# ls /var/db/mysql/|wc -l
32767
root@xxx:/root# mkdir /var/db/mysql/itsnobase
mkdir: /var/db/mysql/itsnobase: Too many links
Получается 32767 это потолок по количеству бд? Как преодолеть эту цифру? Мне нужно ну 200 - 300 тыс. баз данных. Как этого можно добиться?
сменить файловую систему
Или запустить несколько mysqld с разными конфигами, указав разные --datadir=
сменить файловую систему
Админ перенес б.д. в другой раздел, где кол-во инодов больше, но это не помогло.
Или запустить несколько mysqld с разными конфигами, указав разные --datadir=
Можно подробнее об этом?
Можно подробнее об этом?
Эм. Есть датадир: /var/lib/mysql
Сделать
/var/lib/mysql1
/var/lib/mysql2
...
/var/lib/mysql99
/var/lib/mysql100
В каждый положить по my.cnf
И запускать новые mysqld так:
/usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql100 --user=mysql --pid-file=/var/lib/mysql/mysql100.pid --skip-external-locking --socket=/var/lib/mysql100/mysql.sock
Все бы хорошо, но придется разным клиентам указывать раздельные атрибуты соединения. Или кто там у вас столько баз использует ?
Файловую систему сменить будет красивее.
Можно подробнее об этом?
можно сделать и стандартными средствами MySQL, точнее mysqld_multi
пример конфига
можно сделать и стандартными средствами MySQL, точнее mysqld_multi
Кстати - да, забыл. И учитывая количество предполагаемых демонов - лучше именно так и делать. Главное не забывать, что под каждый демон нужна память и она не бесконечная...
Все бы хорошо, но придется разным клиентам указывать раздельные атрибуты соединения. Или кто там у вас столько баз использует ?
Это один скрипт такой у меня :) Настроить на разные атрибуты реально.
Значит многодемоновый способ самый оптимальный?
Это один скрипт такой у меня :) Настроить на разные атрибуты реально.
Значит многодемоновый способ самый оптимальный?
Нет, это плохой способ.
Скорее всего вы наткнулись на ограничения числа субдиректорий в одной директории.
Если так, то 2 варианта:
- сменить тип файловой системы (xfs вместо ext3).
- перенести часть директорий куда-то, а в /var/lib/mysql/ наделать симлинков.
Пардон, судя по /var/db/mysql у вас ещё и ОС не позволит сменить тип файловой системы. :-(