Tag Archives: MySQL

myssq logrotate

/etc/logrotate.d/mysql

/var/log/mysql/*.log
{
    create 0660 mysql mysql
    compress
    dateext
    rotate 8
    weekly
    missingok
    postrotate
      # just if mysqld is really running
      if test -x /usrbin/mysqladmin && /usr/bin/mysqladmin ping &>/dev/null
      then
         /usr/bin/mysqladmin flush-logs
      fi
    endscript
}

Asterisk CDR setup

cdr_adaptive_odbc

Debian 9 Stretch
Asterisk 13.14.1 from debian repo.
MariaDB 10.3.7 from MariaaDB repo.

apt install unixodbc unixodbc-dev 

/etc/odbcinst.ini

[mariadb]
Description=MariaDB Connector/ODBC v.2.0
Driver=/usr/lib/x86_64-linux-gnu/odbc/libmaodbc.so
Setup=/usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so
FileUsage=1
UsageCount=2

Continue reading

Asterisk | Save queue log in MySQL database

Check for existing ODBC MySQL DSN

asterisk*CLI> odbc show 

ODBC DSN Settings
-----------------
  Name:   asterisk
  DSN:    asteriskcdr-odbc
    Last connection attempt: 2019-12-21 11:42:30
    Number of active connections: 1 (out of 1)

Add to /etc/asterisk/extconfig.conf

[settings]
; queue_log => odbc,{DSN-NAME},{TableName}
queue_log => odbc,asterisk,queue_log_test

Continue reading

Mysql сумма прописью на украинском языке

Сумма (число) прописью на украинском языке (UTF8), в виде хранимой функции mysql.
MySQL 5.5

FUNCTION NUM2STR_UKR ( Number, sex )
Возвращает – целое число прописью.
Number – bigint
sex – varchar = род числа: m-мужской, f-женский, s-средний.

FUNCTION FIN2STR_UKR ( Number )
Возвращает – сумму число прописью.
Number – decimal(20,2)

Примечание:
– Первый символ в верхнем регистре.
– Копейки в формате ’00’

Пример:

SELECT num2str_ukr( 25689724, 'f' ) 
-- двадцять п’ять мільйонів шістсот вісімдесят дев’ять тисяч сімсот двадцять чотири
SELECT num2str_ukr( 1, 'f' ) 
-- одна
SELECT num2str_ukr( 1, 'm' ) 
-- один
SELECT ( fin2str_ukr(123568.22) );
-- Сто двадцять три тисячі сімсот шістдесят вісімь гривень 22 копiйки

Continue reading

MySQL notes

Create user

-- Local user
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
--
GRANT ALL PRIVILEGES ON dbname.* TO 'username'@'localhost';
--
FLUSH PRIVILEGES;

Remote user

CREATE USER 'username'@'%' IDENTIFIED BY 'PASSWORD';
--
GRANT ALL PRIVILEGES ON dbname.* TO 'username'@'%';
--
FLUSH PRIVILEGES;

Continue reading

Zabbix MySQL monitoring

Конфиги на агенте

# Linux: /etc/zabbix/zabbix_agentd.conf.d/zabbix-mysql.conf
# FreeBSD: /usr/local/etc/zabbix22/zabbix_agentd.conf.d/zabbix-mysql.conf
UserParameter=mysql.version,mysql -V
UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | HOME=/etc/zabbix mysql -N | awk '{print $$2}'
UserParameter=mysql.ping,HOME=/etc/zabbix mysqladmin ping | grep -c alive

Cоздать отдельного пользователя в Mysql


-- MySQL
GRANT USAGE ON *.* TO 'zabbix'@'localhost' IDENTIFIED BY 'zabbixpassword';
FLUSH PRIVILEGES;

-- Ver 14.14 Distrib 5.6.35-80.0 Percona
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'zabbixpassword';
GRANT USAGE ON *.* TO 'zabbix'@'localhost';
FLUSH PRIVILEGES;

/etc/zabbix/.my.cnf

ZABPASS=`shuf -ez -n20  {A..Z} {a..z} {0..9}`

[client]
user=zabbix
password=zabbixpassword