Commit 69b84b1092640c2bb33a042dc1d5908dc2d17ab4
Exists in
sei-v3.0.0-oracle-dockerimages
and in
3 other branches
Atualização do Mysql para versão 5.7
Ajuste realizado para resolver o problema truncamento de dados caso extrapole o tamanho da coluna. (Closes #6)
Showing
4 changed files
with
90 additions
and
71 deletions
Show diff stats
Vagrantfile
| 1 | 1 | # -*- mode: ruby -*- |
| 2 | 2 | # vi: set ft=ruby : |
| 3 | -require "yaml" | |
| 4 | 3 | |
| 5 | 4 | # Vagrantfile API/syntax version. Don't touch unless you know what you're doing! |
| 6 | 5 | VAGRANTFILE_API_VERSION = "2" |
| 7 | 6 | |
| 8 | -# Parâmetros de customização do ambiente de desenvolvimento | |
| 9 | -params = if File.exists?("Vagrantfile.conf") then YAML::load_file("Vagrantfile.conf") else {} end | |
| 10 | -params_source_dir = params["source_dir"] || "../sei" | |
| 11 | -params_memoria_vm = params["memoria_vm"] || "1024" | |
| 12 | - | |
| 13 | 7 | Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| |
| 14 | 8 | |
| 15 | 9 | # Atribuição do hostname da máquina virtual |
| ... | ... | @@ -27,22 +21,18 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| |
| 27 | 21 | |
| 28 | 22 | # Diretórios compartilhados com a durante a execução |
| 29 | 23 | config.vm.synced_folder ".", "/mnt/sei/ops" |
| 30 | - config.vm.synced_folder params_source_dir, "/mnt/sei/src", mount_options: ["dmode=777", "fmode=777"] | |
| 24 | + config.vm.synced_folder "../sei", "/mnt/sei/src", mount_options: ["dmode=777", "fmode=777"] | |
| 31 | 25 | |
| 32 | - # Provider-specific configuration so you can fine-tune various | |
| 33 | - # backing providers for Vagrant. These expose provider-specific options. | |
| 34 | 26 | config.vm.provider "virtualbox" do |vb| |
| 35 | - # vb.gui = true | |
| 36 | - # Use VBoxManage to customize the VM. For example to change memory: | |
| 37 | - vb.customize ["modifyvm", :id, "--memory", params_memoria_vm, "--usb", "off", "--audio", "none"] | |
| 27 | + vb.customize ["modifyvm", :id, "--memory", "2048", "--usb", "off", "--audio", "none"] | |
| 38 | 28 | end |
| 39 | 29 | |
| 40 | - config.vm.provision "shell", | |
| 41 | - inline: <<SCRIPT | |
| 42 | - mkdir -p /mnt/sei/ops/mysql/.tmp/ | |
| 43 | - cp /mnt/sei/ops/sei/ConfiguracaoSEI.php /mnt/sei/src/sei/ConfiguracaoSEI.php | |
| 44 | - cp /mnt/sei/ops/sei/ConfiguracaoSip.php /mnt/sei/src/sip/ConfiguracaoSip.php | |
| 45 | -SCRIPT | |
| 30 | +# config.vm.provision "shell", | |
| 31 | +# inline: <<SCRIPT | |
| 32 | +# mkdir -p /mnt/sei/ops/mysql/.tmp/ | |
| 33 | +# cp /mnt/sei/ops/sei/ConfiguracaoSEI.php /mnt/sei/src/sei/ConfiguracaoSEI.php | |
| 34 | +# cp /mnt/sei/ops/sei/ConfiguracaoSip.php /mnt/sei/src/sip/ConfiguracaoSip.php | |
| 35 | +#SCRIPT | |
| 46 | 36 | |
| 47 | 37 | # Provisionamento da Máquina Virtual responsável por manter os containers do Docker |
| 48 | 38 | config.vm.provision "docker" do |docker| | ... | ... |
mysql/Dockerfile
| ... | ... | @@ -13,59 +13,15 @@ MAINTAINER PEN - Processo Eletrônico Nacional |
| 13 | 13 | |
| 14 | 14 | ################## INICIO DA INSTALACAO ###################### |
| 15 | 15 | # Instalação do MySQL seguindo as recomendações descritas na documentação do SEI |
| 16 | -# Ref: https://processoeletronico.gov.br/projects/sei/wiki | |
| 17 | - | |
| 18 | -# Instalação do MySQL Server 5.X | |
| 19 | -RUN yum update -y && \ | |
| 20 | - yum install -y mysql-server-5.* && \ | |
| 21 | - yum -y clean all | |
| 22 | 16 | |
| 23 | 17 | # Cópia dos backups dos bancos de dados do SEI e SIP |
| 24 | -#ADD .tmp/sei_mysql.sql /tmp/sei_mysql.sql | |
| 25 | -#ADD .tmp/sip_mysql.sql /tmp/sip_mysql.sql | |
| 26 | -ADD sei-db-ref-executivo/mysql/sei_2_6_0_BD_Ref_Exec.sql /tmp/sei_mysql.sql | |
| 27 | -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 | |
| 28 | 20 | ADD my.cnf /etc/my.cnf |
| 21 | +ADD install.sh /install.sh | |
| 29 | 22 | |
| 30 | -# Configuração da estrutura inicial do banco de dados | |
| 31 | -RUN mysql_install_db | |
| 32 | - | |
| 33 | -# Criação dos bancos de dados do sistema | |
| 34 | -RUN /etc/init.d/mysqld start && \ | |
| 35 | - mysqladmin create sip && \ | |
| 36 | - mysqladmin create sei | |
| 37 | - | |
| 38 | -# Criação dos usuários utilizados na conexão com SEI e SIP | |
| 39 | -RUN /etc/init.d/mysqld start && \ | |
| 40 | - mysql -e "CREATE USER 'sip_user'@'%' IDENTIFIED BY 'sip_user'" sip && \ | |
| 41 | - mysql -e "CREATE USER 'sei_user'@'%' IDENTIFIED BY 'sei_user'" sei && \ | |
| 42 | - mysql -e "GRANT ALL PRIVILEGES ON sip.* TO 'sip_user'@'%'" sip && \ | |
| 43 | - mysql -e "GRANT ALL PRIVILEGES ON sei.* TO 'sei_user'@'%'" sei | |
| 44 | - | |
| 45 | -# Restauração dos bancos de dados | |
| 46 | -RUN /etc/init.d/mysqld start && cd /tmp && \ | |
| 47 | - mysql sei < sei_mysql.sql && \ | |
| 48 | - mysql sip < sip_mysql.sql && \ | |
| 49 | - rm -f /tmp/sei_mysql.sql /tmp/sip_mysql.sql | |
| 50 | - | |
| 51 | -# Atualização dos parâmetros do SEI e do SIP | |
| 52 | -RUN /etc/init.d/mysqld start && \ | |
| 53 | - mysql -e "update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0;" sip && \ | |
| 54 | - mysql -e "update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP';" sip && \ | |
| 55 | - 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 && \ | |
| 56 | - mysql -e "update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0;" sei | |
| 57 | - | |
| 58 | -# Temp: Remove registros de auditoria presentes na base de referência | |
| 59 | -RUN /etc/init.d/mysqld start && \ | |
| 60 | - mysql -e "delete from auditoria_protocolo;" sei | |
| 61 | - | |
| 62 | -# Configuração para utilizar autenticação nativa do SEI/SIP | |
| 63 | -RUN /etc/init.d/mysqld start && \ | |
| 64 | - mysql -e "update orgao set sin_autenticar='N' where id_orgao=0;" sip | |
| 65 | - | |
| 66 | -# Atribuição de permissões de acesso externo para o usuário root, senha root | |
| 67 | -RUN /etc/init.d/mysqld start && \ | |
| 68 | - 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 | |
| 69 | 25 | |
| 70 | 26 | ##################### FIM DA INSTALACAO ##################### |
| 71 | 27 | ... | ... |
| ... | ... | @@ -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 | ... | ... |
mysql/my.cnf
| 1 | 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 | 17 | datadir=/var/lib/mysql |
| 3 | 18 | socket=/var/lib/mysql/mysql.sock |
| 4 | -user=mysql | |
| 19 | + | |
| 20 | +# Disabling symbolic-links is recommended to prevent assorted security risks | |
| 5 | 21 | symbolic-links=0 |
| 6 | -sql-mode=STRICT_TRANS_TABLES | |
| 22 | + | |
| 7 | 23 | max_allowed_packet=268435456 |
| 8 | 24 | |
| 9 | -[mysqld_safe] | |
| 10 | 25 | log-error=/var/log/mysqld.log |
| 11 | 26 | pid-file=/var/run/mysqld/mysqld.pid |
| 12 | - | ... | ... |