MySQL: несколько экземпляров с использованием systemd

Справочная информация: ответ @ karel

уменьшает размер изображения до не более 2.0 МБ.

Возможно, существует ограничение размера файлов изображений на вашем веб-сайте. Изображение, которое вы загружаете на сайт, составляет 4,8 МБ .jpg изображения, которое, возможно, слишком велико для веб-сайта, на который вы загружаете его. Попробуйте масштабировать изображение вниз, чтобы уменьшить его размер до более удобного для Интернета, не более 2,0 МБ.

Решение, которое сохраняет разрешение (и dpi) файла изображения

, уменьшает размер изображения, используя настройку «качество»

В [ f1], чтобы уменьшить «качество» jpeg-изображения. Когда вы пытаетесь экспортировать изображение (как jpeg), вы получаете диалоговое окно. Обычно я использую «качество = 90».

Вы можете проверить, например, «quality = 70», что уменьшило размер тестового изображения с 3,6 MiB до 1,6 MiB.

Разрешение (в пикселях) остается неизменным, но рендеринг цвета в соседних пикселях имитируется таким образом, который уменьшает размер файла с «наименее возможной потерей качества», если смотреть на человеческий глаз.

1
задан 7 March 2018 в 16:48

3 ответа

Я не знаю, правильно ли это, но так я и сделал. Пожалуйста, оставьте комментарий, если здесь что-то не так.

My /lib/systemd/system/mysql@.service выглядит так:

[Unit]
Description=Multi Instance MySQL Community Server
After=network.target

[Install]
WantedBy=multi-user.target

[Service]
User=mysql
Group=mysql
PermissionsStartOnly=true
ExecStart=/usr/sbin/mysqld --defaults-file=/etc/mysql/mysql.conf.d/my_%I.cnf
TimeoutSec=600
Restart=on-failure
RuntimeDirectory=mysqld
RuntimeDirectoryMode=755

Затем я создал отдельную конфигурацию файл для каждого экземпляра в /lib/systemd/system/mysql@.service с именами my_replica01.cnf и т. д. Я просто скопировал основной файл конфигурации из MySQL и изменил пути и номер порта. Затем я создал папку данных для каждого экземпляра следующим образом:

mkdir /var/lib/mysql-replica01
mkdir /var/lib/mysql-replica02
chown -R mysql:mysql /var/lib/mysql-replica*

и т. Д.

Затем я инициализировал экземпляр с помощью:

mysqld --user=mysql --initialize --datadir=/var/lib/mysql-replica01

Тогда I пришлось перезагрузить systemd после того, как я добавил файл my_replica01.cnf

systemctl daemon-reload

Затем просто включите экземпляры с:

systemctl enable mysql@replica01
systemctl enable mysql@replica02

Теперь экземпляры запускается автоматически при загрузке сервера. Чтобы запустить их вручную, вы просто запустите:

systemctl start mysql@replica01

EDIT:

Чтобы добавить, мне пришлось подключиться к экземпляру с помощью сокета следующим образом:

Затем измените пароль и т. д. для учетной записи root. По какой-то причине файл .mysql_secret не был создан, как он говорит в каждой документации, которую я мог найти.

0
ответ дан 22 May 2018 в 12:42

Я не знаю, правильно ли это, но так я и сделал. Пожалуйста, оставьте комментарий, если здесь что-то не так.

My /lib/systemd/system/mysql@.service выглядит так:

[Unit] Description=Multi Instance MySQL Community Server After=network.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql PermissionsStartOnly=true ExecStart=/usr/sbin/mysqld --defaults-file=/etc/mysql/mysql.conf.d/my_%I.cnf TimeoutSec=600 Restart=on-failure RuntimeDirectory=mysqld RuntimeDirectoryMode=755

Затем я создал отдельную конфигурацию файл для каждого экземпляра в /lib/systemd/system/mysql@.service с именами my_replica01.cnf и т. д. Я просто скопировал основной файл конфигурации из MySQL и изменил пути и номер порта. Затем я создал папку данных для каждого экземпляра следующим образом:

mkdir /var/lib/mysql-replica01 mkdir /var/lib/mysql-replica02 chown -R mysql:mysql /var/lib/mysql-replica*

и т. Д.

Затем я инициализировал экземпляр с помощью:

mysqld --user=mysql --initialize --datadir=/var/lib/mysql-replica01

Тогда I пришлось перезагрузить systemd после того, как я добавил файл my_replica01.cnf

systemctl daemon-reload

Затем просто включите экземпляры с:

systemctl enable mysql@replica01 systemctl enable mysql@replica02

Теперь экземпляры запускается автоматически при загрузке сервера. Чтобы запустить их вручную, вы просто запустите:

systemctl start mysql@replica01

EDIT:

Чтобы добавить, мне пришлось подключиться к экземпляру с помощью сокета следующим образом:

mysql -S /var/lib/mysql-replica01/mysql.sock -p

Затем измените пароль и т. д. для учетной записи root. По какой-то причине файл .mysql_secret не был создан, как он говорит в каждой документации, которую я мог найти.

0
ответ дан 17 July 2018 в 19:21

Я не знаю, правильно ли это, но так я и сделал. Пожалуйста, оставьте комментарий, если здесь что-то не так.

My /lib/systemd/system/mysql@.service выглядит так:

[Unit] Description=Multi Instance MySQL Community Server After=network.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql PermissionsStartOnly=true ExecStart=/usr/sbin/mysqld --defaults-file=/etc/mysql/mysql.conf.d/my_%I.cnf TimeoutSec=600 Restart=on-failure RuntimeDirectory=mysqld RuntimeDirectoryMode=755

Затем я создал отдельную конфигурацию файл для каждого экземпляра в /lib/systemd/system/mysql@.service с именами my_replica01.cnf и т. д. Я просто скопировал основной файл конфигурации из MySQL и изменил пути и номер порта. Затем я создал папку данных для каждого экземпляра следующим образом:

mkdir /var/lib/mysql-replica01 mkdir /var/lib/mysql-replica02 chown -R mysql:mysql /var/lib/mysql-replica*

и т. Д.

Затем я инициализировал экземпляр с помощью:

mysqld --user=mysql --initialize --datadir=/var/lib/mysql-replica01

Тогда I пришлось перезагрузить systemd после того, как я добавил файл my_replica01.cnf

systemctl daemon-reload

Затем просто включите экземпляры с:

systemctl enable mysql@replica01 systemctl enable mysql@replica02

Теперь экземпляры запускается автоматически при загрузке сервера. Чтобы запустить их вручную, вы просто запустите:

systemctl start mysql@replica01

EDIT:

Чтобы добавить, мне пришлось подключиться к экземпляру с помощью сокета следующим образом:

mysql -S /var/lib/mysql-replica01/mysql.sock -p

Затем измените пароль и т. д. для учетной записи root. По какой-то причине файл .mysql_secret не был создан, как он говорит в каждой документации, которую я мог найти.

0
ответ дан 23 July 2018 в 20:06

Другие вопросы по тегам:

Похожие вопросы: