Commit 32885945919ad4325ebad7cb6c3f12360b3f437b

Authored by Guilherme Andrade Del Cantoni
1 parent 11266655

Atualização do MySQL para a versão 5.7

mysql/Dockerfile
@@ -14,60 +14,14 @@ MAINTAINER PEN - Processo Eletrônico Nacional @@ -14,60 +14,14 @@ MAINTAINER PEN - Processo Eletrônico Nacional
14 ################## INICIO DA INSTALACAO ###################### 14 ################## INICIO DA INSTALACAO ######################
15 # Instalação do MySQL seguindo as recomendações descritas na documentação do SEI 15 # Instalação do MySQL seguindo as recomendações descritas na documentação do SEI
16 16
17 -# Instalar o yum repo rpm package  
18 -RUN yum install -y wget && \  
19 - wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm && \  
20 - rpm -ivh mysql-community-release-el6-5.noarch.rpm  
21 -  
22 -# Instalação do MySQL Server 5.X  
23 -RUN yum update -y && \  
24 - yum install -y mysql-server && \  
25 - yum -y clean all  
26 -  
27 # Cópia dos backups dos bancos de dados do SEI e SIP 17 # Cópia dos backups dos bancos de dados do SEI e SIP
28 -ADD sei-db-ref-executivo/mysql/sei_2_6_0_BD_Ref_Exec.sql /tmp/sei_mysql.sql  
29 -ADD sei-db-ref-executivo/mysql/sip_2_6_0_BD_Ref_Exec.sql /tmp/sip_mysql.sql 18 +ADD sei-db-ref-executivo/mysql/sei_2_6_0_BD_Ref_Exec.sql /opt/sei_mysql.sql
  19 +ADD sei-db-ref-executivo/mysql/sip_2_6_0_BD_Ref_Exec.sql /opt/sip_mysql.sql
30 ADD my.cnf /etc/my.cnf 20 ADD my.cnf /etc/my.cnf
  21 +ADD install.sh /install.sh
31 22
32 -# Configuração da estrutura inicial do banco de dados  
33 -RUN mysql_install_db  
34 -  
35 -# Criação dos bancos de dados do sistema  
36 -RUN /etc/init.d/mysqld start && \  
37 - mysqladmin create sip && \  
38 - mysqladmin create sei  
39 -  
40 -# Criação dos usuários utilizados na conexão com SEI e SIP  
41 -RUN /etc/init.d/mysqld start && \  
42 - mysql -e "CREATE USER 'sip_user'@'%' IDENTIFIED BY 'sip_user'" sip && \  
43 - mysql -e "CREATE USER 'sei_user'@'%' IDENTIFIED BY 'sei_user'" sei && \  
44 - mysql -e "GRANT ALL PRIVILEGES ON sip.* TO 'sip_user'@'%'" sip && \  
45 - mysql -e "GRANT ALL PRIVILEGES ON sei.* TO 'sei_user'@'%'" sei  
46 -  
47 -# Restauração dos bancos de dados  
48 -RUN /etc/init.d/mysqld start && cd /tmp && \  
49 - mysql sei < sei_mysql.sql && \  
50 - mysql sip < sip_mysql.sql && \  
51 - rm -f /tmp/sei_mysql.sql /tmp/sip_mysql.sql  
52 -  
53 -# Atualização dos parâmetros do SEI e do SIP  
54 -RUN /etc/init.d/mysqld start && \  
55 - mysql -e "update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0;" sip && \  
56 - mysql -e "update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP';" sip && \  
57 - mysql -e "update sistema set pagina_inicial='http://localhost/sei/inicializar.php', web_service='http://localhost/sei/controlador_ws.php?servico=sip' where sigla='SEI';" sip && \  
58 - mysql -e "update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0;" sei  
59 -  
60 -# Temp: Remove registros de auditoria presentes na base de referência  
61 -RUN /etc/init.d/mysqld start && \  
62 - mysql -e "delete from auditoria_protocolo;" sei  
63 -  
64 -# Configuração para utilizar autenticação nativa do SEI/SIP  
65 -RUN /etc/init.d/mysqld start && \  
66 - mysql -e "update orgao set sin_autenticar='N' where id_orgao=0;" sip  
67 -  
68 -# Atribuição de permissões de acesso externo para o usuário root, senha root  
69 -RUN /etc/init.d/mysqld start && \  
70 - mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;" 23 +# Instalação do MySQL 5.7 e demais componentes
  24 +RUN bash install.sh
71 25
72 ##################### FIM DA INSTALACAO ##################### 26 ##################### FIM DA INSTALACAO #####################
73 27
mysql/install.sh 0 → 100644
@@ -0,0 +1,59 @@ @@ -0,0 +1,59 @@
  1 +#!/usr/bin/env bash
  2 +
  3 +set -e
  4 +set -u
  5 +set -o pipefail
  6 +
  7 +yum update -y
  8 +
  9 +# Instalar o yum repo rpm package
  10 +yum install -y wget
  11 +wget http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm
  12 +yum localinstall -y mysql57-community-release-el6-7.noarch.rpm
  13 +
  14 +# Instalação do MySQL Server 5.X
  15 +yum install -y mysql-community-server
  16 +
  17 +# Inicialização do diretório de armazenamento do MySQL.
  18 +# PS: Utilizando configuração insegura apenas para propósito de desenvolvimento
  19 +rm -rf /var/lib/mysql/*
  20 +chown -R mysql:mysql /var/lib/mysql
  21 +mysqld --user=mysql --initialize-insecure
  22 +
  23 +# Inicialização do banco de dados
  24 +/etc/init.d/mysqld start
  25 +
  26 +# Criação dos bancos de dados do sistema
  27 +mysqladmin create sip
  28 +mysqladmin create sei
  29 +
  30 +# Criação dos usuários utilizados na conexão com SEI e SIP
  31 +mysql -e "CREATE USER 'sip_user'@'%' IDENTIFIED BY 'sip_user'" sip
  32 +mysql -e "CREATE USER 'sei_user'@'%' IDENTIFIED BY 'sei_user'" sei
  33 +mysql -e "GRANT ALL PRIVILEGES ON sip.* TO 'sip_user'@'%'" sip
  34 +mysql -e "GRANT ALL PRIVILEGES ON sei.* TO 'sei_user'@'%'" sei
  35 +
  36 +# Restauração dos bancos de dados
  37 +mysql sei < /opt/sei_mysql.sql
  38 +mysql sip < /opt/sip_mysql.sql
  39 +rm -f /opt/sei_mysql.sql /opt/sip_mysql.sql
  40 +
  41 +# Atualização dos parâmetros do SEI e do SIP
  42 +mysql -e "update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0;" sip
  43 +mysql -e "update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP';" sip
  44 +mysql -e "update sistema set pagina_inicial='http://localhost/sei/inicializar.php', web_service='http://localhost/sei/controlador_ws.php?servico=sip' where sigla='SEI';" sip
  45 +mysql -e "update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0;" sei
  46 +
  47 +# Temp: Remove registros de auditoria presentes na base de referência
  48 +mysql -e "delete from auditoria_protocolo;" sei
  49 +
  50 +# Configuração para utilizar autenticação nativa do SEI/SIP
  51 +mysql -e "update orgao set sin_autenticar='N' where id_orgao=0;" sip
  52 +
  53 +# Atribuição de permissões de acesso externo para o usuário root, senha root
  54 +mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;"
  55 +
  56 +yum clean -y all
  57 +
  58 +
  59 +exit 0
1 [mysqld] 1 [mysqld]
  2 +#
  3 +# Remove leading # and set to the amount of RAM for the most important data
  4 +# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
  5 +# innodb_buffer_pool_size = 128M
  6 +#
  7 +# Remove leading # to turn on a very important data integrity option: logging
  8 +# changes to the binary log between backups.
  9 +# log_bin
  10 +#
  11 +# Remove leading # to set options mainly useful for reporting servers.
  12 +# The server defaults are faster for transactions and fast SELECTs.
  13 +# Adjust sizes as needed, experiment to find the optimal values.
  14 +# join_buffer_size = 128M
  15 +# sort_buffer_size = 2M
  16 +# read_rnd_buffer_size = 2M
2 datadir=/var/lib/mysql 17 datadir=/var/lib/mysql
3 socket=/var/lib/mysql/mysql.sock 18 socket=/var/lib/mysql/mysql.sock
4 -user=mysql 19 +
  20 +# Disabling symbolic-links is recommended to prevent assorted security risks
5 symbolic-links=0 21 symbolic-links=0
6 -sql-mode=STRICT_TRANS_TABLES 22 +
7 max_allowed_packet=268435456 23 max_allowed_packet=268435456
8 -innodb_change_buffering=none  
9 24
10 -[mysqld_safe]  
11 log-error=/var/log/mysqld.log 25 log-error=/var/log/mysqld.log
12 pid-file=/var/run/mysqld/mysqld.pid 26 pid-file=/var/run/mysqld/mysqld.pid
13 -