Forwarded from Базы данных (Data Base)
Multiple MySQL Router Client in Single Server/Nodes
https://dev.to/adbrsln/multiple-mysql-router-client-in-single-servernodes-2j99
#mysql #innodb #router #client
👉 @database_info
https://dev.to/adbrsln/multiple-mysql-router-client-in-single-servernodes-2j99
#mysql #innodb #router #client
👉 @database_info
👍2
Как настроить Rsyslog с MySQL
Rsyslog – это мощный сервер управления журналами для Linux, который позволяет хранить, управлять и просматривать журналы из различных приложений. Это расширенная версия системы syslog в Linux. В этой статье мы рассмотрим, как настроить Rsyslog с MySQL сервером баз данных.
Как настроить Rsyslog с MySQL по шагам:
1. Установите Apache, MySQL и PHP
Нам нужно установить Rsyslog и MySQL, выполним следующую команду для CentOS / RHEL
# yum install mysql-server rsyslog rsyslog-mysql
И такую команду, если Вы на Debian / Ubuntu и подобных системах
# apt install mysql-server rsyslog rsyslog-mysql
Выполните следующие команды для запуска и автоматического запуска при перезагрузке системы (на всякий случай отключим стандартный syslog, если он установлен)
Для CentOS / RHEL
# service mysql start
# service rsyslog start
# chkconfig rsyslog on
# chkconfig mysqld on
# service syslog stop
# chkconfig syslog off
И команды для Debian / Ubuntu совместимых систем
# service mysql start
# service rsyslog start
# update-rc.d rsyslog defaults
# update-rc.d mysql defaults
# service syslog stop
# update-rc.d syslog remove
Если вы устанавливаете MySQL в первый раз, вам необходимо установить пароль root для защиты установки MySQL.
# mysqladmin -u root password 'MYSQLPASSWORD'
2. Создайте пользователя базы данных Rsyslog
Rsyslog понадобится база данных MySQL для хранения своих данных. Он уже предоставляет скрипт, который автоматически создает необходимую базу данных с таблицами для Rsyslog. Вы можете запустить его с помощью следующей команды.
# mysql -u root -p < /usr/share/doc/rsyslog-mysql-4.8.10/createDB.sql
Приведенная выше команда создаст базу данных с именем syslog. Пожалуйста, напишите имя директории rsyslog в соответствии с вашей системой. Мы использовали версию 4.8.10.
Вы можете легко найти полный путь к файлу скрипта createDB.sql, используя следующую команду
# find / -name createDB.sql
Далее создайте пользователя базы данных со следующей командой. Замените ПАРОЛЬ паролем базы данных по вашему выбору.
# mysql -u root -p
mysql> GRANT ALL ON Syslog.* TO 'rsyslog'@'localhost' IDENTIFIED BY 'PASSWORD';
mysql> FLUSH PRIVILEGES;
mysql> \q
3. Настройка Rsyslog с MySQL
Далее мы редактируем файл конфигурации Rsyslog и включаем модуль MySQL в Rsyslog. Мы также должны предоставить ему данные пользователя базы данных MySQL для автоматического входа в систему. Откройте файл Rsyslog в текстовом редакторе.
# vim /etc/rsyslog.conf
Добавьте к нему следующие строки (нажмите i для входа в режим правки). Замените ПАРОЛЬ паролем базы данных, который установили выше.
$ModLoad ommysql
*.* :ommysql:127.0.0.1,Syslog,rsyslog,
PASSWORD
Сохраните и закройте файл (наберите 😡 а затем нажмите Enter). Перезагрузите Rsyslog с помощью MySQL.
# service rsyslog restart
Вот и все. Теперь все ваши журналы MySQL будут храниться на сервере syslog. В нашей следующей статье мы расскажем, как установить Loganalyzer с Rsyslog и MySQL, чтобы вы могли легко читать логи системы.
#Rsyslog #MySQL
Rsyslog – это мощный сервер управления журналами для Linux, который позволяет хранить, управлять и просматривать журналы из различных приложений. Это расширенная версия системы syslog в Linux. В этой статье мы рассмотрим, как настроить Rsyslog с MySQL сервером баз данных.
Как настроить Rsyslog с MySQL по шагам:
1. Установите Apache, MySQL и PHP
Нам нужно установить Rsyslog и MySQL, выполним следующую команду для CentOS / RHEL
# yum install mysql-server rsyslog rsyslog-mysql
И такую команду, если Вы на Debian / Ubuntu и подобных системах
# apt install mysql-server rsyslog rsyslog-mysql
Выполните следующие команды для запуска и автоматического запуска при перезагрузке системы (на всякий случай отключим стандартный syslog, если он установлен)
Для CentOS / RHEL
# service mysql start
# service rsyslog start
# chkconfig rsyslog on
# chkconfig mysqld on
# service syslog stop
# chkconfig syslog off
И команды для Debian / Ubuntu совместимых систем
# service mysql start
# service rsyslog start
# update-rc.d rsyslog defaults
# update-rc.d mysql defaults
# service syslog stop
# update-rc.d syslog remove
Если вы устанавливаете MySQL в первый раз, вам необходимо установить пароль root для защиты установки MySQL.
# mysqladmin -u root password 'MYSQLPASSWORD'
2. Создайте пользователя базы данных Rsyslog
Rsyslog понадобится база данных MySQL для хранения своих данных. Он уже предоставляет скрипт, который автоматически создает необходимую базу данных с таблицами для Rsyslog. Вы можете запустить его с помощью следующей команды.
# mysql -u root -p < /usr/share/doc/rsyslog-mysql-4.8.10/createDB.sql
Приведенная выше команда создаст базу данных с именем syslog. Пожалуйста, напишите имя директории rsyslog в соответствии с вашей системой. Мы использовали версию 4.8.10.
Вы можете легко найти полный путь к файлу скрипта createDB.sql, используя следующую команду
# find / -name createDB.sql
Далее создайте пользователя базы данных со следующей командой. Замените ПАРОЛЬ паролем базы данных по вашему выбору.
# mysql -u root -p
mysql> GRANT ALL ON Syslog.* TO 'rsyslog'@'localhost' IDENTIFIED BY 'PASSWORD';
mysql> FLUSH PRIVILEGES;
mysql> \q
3. Настройка Rsyslog с MySQL
Далее мы редактируем файл конфигурации Rsyslog и включаем модуль MySQL в Rsyslog. Мы также должны предоставить ему данные пользователя базы данных MySQL для автоматического входа в систему. Откройте файл Rsyslog в текстовом редакторе.
# vim /etc/rsyslog.conf
Добавьте к нему следующие строки (нажмите i для входа в режим правки). Замените ПАРОЛЬ паролем базы данных, который установили выше.
$ModLoad ommysql
*.* :ommysql:127.0.0.1,Syslog,rsyslog,
PASSWORD
Сохраните и закройте файл (наберите 😡 а затем нажмите Enter). Перезагрузите Rsyslog с помощью MySQL.
# service rsyslog restart
Вот и все. Теперь все ваши журналы MySQL будут храниться на сервере syslog. В нашей следующей статье мы расскажем, как установить Loganalyzer с Rsyslog и MySQL, чтобы вы могли легко читать логи системы.
#Rsyslog #MySQL
👍4
Forwarded from Базы данных (Data Base)
Как получить id вставленной записи в mysql?
Вы можете использовать LAST_INSERT_ID() чтобы получить id последней вставленной записи в MySQL, ниже пример запроса на MySQL:
#mysql
👉 @database_info
Вы можете использовать LAST_INSERT_ID() чтобы получить id последней вставленной записи в MySQL, ниже пример запроса на MySQL:
# INSERT INTO your_table (col1, col2,...) VALUES ('val1', 'val2'...);
SELECT LAST_INSERT_ID();#mysql
👉 @database_info
👍7
Forwarded from Базы данных (Data Base)
MySQL
Auto insert with TimeStamp
Copy Database
Create User
Delete User
or
Change Password
CSV Import / Export
Tips
Export to CSV
#MySQL
👉 @database_info
Auto insert with TimeStamp
CREATE TABLE test (
id INTEGER,
txt VARCHAR(20),
ts1 TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
ts2 TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);Copy Database
mysqldump -u root -p db1 > dump.sql
mysqladmin -u root -p create db2
mysql -u root -p db2 < dump.sql
Create User
mysql> grant all privileges on DBNAME.* to USERNAME@localhost identified by 'PASSWORD';
mysql> grant all privileges on DBNAME.* to USERNAME@"%" identified by 'PASSWORD';
mysql> flush privileges;
--all DB
mysql> grant all privileges on *.* to USERNAME@localhost identified by 'PASSWORD';
mysql> grant all privileges on *.* to USERNAME@"%" identified by 'PASSWORD';
mysql> flush privileges;Delete User
mysql> drop user USERNAME;or
mysql> delete from mysql.user where user = 'USERNAME';Change Password
--User
mysql> set password for USER@"%" = password('PASSWORD');
mysql> set password for USER@localhost = password('PASSWORD');
--root
mysql> set password for root=password('PASSWORD');
mysql> set password for root@localhost=password('PASSWORD');
CSV Import / Export
ERROR 1045 (28000) at line 1: Access denied for user 'USER'@'localhost' (using password: YES)
mysql> grant file on *.* to USER@localhost;
Tips
--Create table as same data and type
mysql> create table newtable as select * from orgtable;--Create table with same type. data is null.
mysql> create table newtable as select * from orgtable where id is null;Export to CSV
# mysql -uUSER -pPASS DATABASE -e "select * from TABLE;" | sed -e 's/^/"/g' | sed -e 's/$/"/g' | sed -e 's/\t/","/g' > /tmp/test.csv
#MySQL
👉 @database_info
👍10
Forwarded from Базы данных (Data Base)
MySQL: Выявите медленные запросы
То, что MySQL по умолчанию не отслеживает и не протоколирует медленные запросы, не значит, что вы не можете сделать это сами. MySQL имеет много функций, которые по умолчанию не включены, но могут быть очень полезны. Чтобы разрешить функцию slow-query-log отредактируйте конфигурационный файл my.cnf и затем запустите следующие команды, находясь в mysqld:
Строка 1 означает, что любой запрос, длящийся более 1 секунды, будет занесен в лог. По умолчанию, параметр установлен в «0». После внесения данного изменения, сервер необходимо перезапустить, чтобы изменения вступили в силу.
Теперь, когда вы имеете возможность выявлять «долгие» запросы, используйте команду EXPLAIN, которая была обсуждена ранее, чтобы выяснить, почему это происходит.
#MySQL
👉 @database_info
То, что MySQL по умолчанию не отслеживает и не протоколирует медленные запросы, не значит, что вы не можете сделать это сами. MySQL имеет много функций, которые по умолчанию не включены, но могут быть очень полезны. Чтобы разрешить функцию slow-query-log отредактируйте конфигурационный файл my.cnf и затем запустите следующие команды, находясь в mysqld:
$long_query_time = 1
$log-slow-queries = /var/log/mysql/mysql-slow-query.logСтрока 1 означает, что любой запрос, длящийся более 1 секунды, будет занесен в лог. По умолчанию, параметр установлен в «0». После внесения данного изменения, сервер необходимо перезапустить, чтобы изменения вступили в силу.
Теперь, когда вы имеете возможность выявлять «долгие» запросы, используйте команду EXPLAIN, которая была обсуждена ранее, чтобы выяснить, почему это происходит.
#MySQL
👉 @database_info
👍6
Узнать размер базы данных через консоль mysql
Существует куча различных инструментов с графическим интерфейсом для управления и обслуживания баз данных (mysqladmin, navicat и прочие), плюс возможности панелей управления сервером, где можно получить информацию о базах данных, таблицах, пользователях. Однако иногда, при работе в консоли сервера через ssh, нужно по быстрому получить размеры существующих баз данных mysql. Для этого достаточно зайти в консольный клиент mysql и выполнить sql запрос.
#mysql
👉@sysadminof
Существует куча различных инструментов с графическим интерфейсом для управления и обслуживания баз данных (mysqladmin, navicat и прочие), плюс возможности панелей управления сервером, где можно получить информацию о базах данных, таблицах, пользователях. Однако иногда, при работе в консоли сервера через ssh, нужно по быстрому получить размеры существующих баз данных mysql. Для этого достаточно зайти в консольный клиент mysql и выполнить sql запрос.
#mysql
👉@sysadminof
👍5
Скрипт automysqlbackup для автоматизации резервного копирования
Сегодня поговорим о простом и достаточно удобном средстве для автоматизации процесса, ежедневного, еженедельного и ежемесячного резервного копирования баз данных MySQL. Это обычный shell-скрипт, Automysqlbackup.sh, использующий для работы, программу mysqldump.
#mysql
👉@sysadminof
Сегодня поговорим о простом и достаточно удобном средстве для автоматизации процесса, ежедневного, еженедельного и ежемесячного резервного копирования баз данных MySQL. Это обычный shell-скрипт, Automysqlbackup.sh, использующий для работы, программу mysqldump.
#mysql
👉@sysadminof
👍1
Forwarded from Базы данных (Data Base)
Как очистить таблицу в mysql
В MySQL, как и в других СУБД можно очищать таблицы. Очистка таблицы позволяет удалять данные при этом не затрагивая саму структуру таблицы. В MySQL существует несколько способов очистки таблицы. В частности, можно выделить очистку таблицы при помощи команд DELETE и TRUNCATE.
#mysql
👉 @database_info
В MySQL, как и в других СУБД можно очищать таблицы. Очистка таблицы позволяет удалять данные при этом не затрагивая саму структуру таблицы. В MySQL существует несколько способов очистки таблицы. В частности, можно выделить очистку таблицы при помощи команд DELETE и TRUNCATE.
#mysql
👉 @database_info
👍5