Ir para conteúdo
  • Cadastre-se

Permissoes De Segurança No Mysql


dsalvanhini

Posts Recomendados

Ola pessoal, estou com uma dificuldade bem tecnica.. e precisando da ajuda de voces.

 

 

tenho um cliente que utiliza o comando "load data local infile" tenho dois servidores, um esta com o mysql na versão  "Server version: 5.1.69-cll MySQL Community Server (GPL)"

 

nessa verão funciona normalmente tanto via phpmyadmin, quando via script php

 

 

mas quando migro ele para outro servidor que esta com a versão " Server version: 5.5.32-cll MySQL Community Server (GPL)"

 

o comando funciona normalmente via phpmyadmin, mas ao rodar via script php da erro, estou achando que pode ser alguma coisa relacionada com segurança

 

encontrei o seguinte trecho abaixo no link http://dev.mysql.com/doc/refman/5.5/en/privileges-provided.html

 

"

  •  The FILE privilege gives you permission to read and write files on the server host using the LOAD DATA INFILEand SELECT ... INTO OUTFILE statements and the LOAD_FILE() function. A user who has the FILE privilege can read any file on the server host that is either world-readable or readable by the MySQL server. (This implies the user can read any file in any database directory, because the server can access any of those files.) The FILEprivilege also enables the user to create new files in any directory where the MySQL server has write access. This includes the server's data directory containing the files that implement the privilege tables. As a security measure, the server will not overwrite existing files.

    To limit the location in which files can be read and written, set the secure_file_priv system to a specific directory. See Section 5.1.4, “Server System Variables”

"

 

pelo que entendi se a regras de segurança mudaram, por isso consigo roda via phpmyadmin e não consigo rodar via script php, alguem tem ideia de onde posso começar para tentar solucionar isso.?

 

desde ja agradeço demais a atenção de todos.

Link para o comentário
Compartilhar em outros sites

adicionando nova informação encontrei a seguinte informação

 

Quando eu tentei importar um CSV para uma tabela do MySQL pela primeira vez, recebi um erro estranho. Dava File not Found (Errcode 13) mesmo o arquivo existindo.

Depois de procurar um pouco, descobri que esse erro é referente à permissões de leitura de arquivo. As permissões estavam corretas e o erro continuava.

Depois de mais um tempo gasto, descobri que o Ubuntu agora usa um gerenciador de permissões diferente, que se chama Apparmor. Esse Apparmor permite que a aplicação acesse apenas os arquivos que estão declarados no perfil da aplicação.

No meu caso, como queria que o MySQL pudesse ler um arquivo, adicionei a seguinte linha no arquivo /etc/apparmor.d/usr.sbin.mysqld:

/path/para/o/arquivo r,

Depois, reiniciei o Apparmor

/etc/init.d/apparmor restart

E simplesmente passou a funcionar.

extraido do link

http://www.vidageek.net/2013/02/27/mysql-errcode-13/

 

 

mas não encontrei essa informação no centos alguma luz?

Link para o comentário
Compartilhar em outros sites

Mas você falou no segundo post que usa o ubuntu  :mellow:

a informação foi extraída do link informado no post de outra pessoa que teve problema parecido.mas ele estava com ubuntu e consegui resolver conforme post eu estou com centos e não sei como faço para resolver o problema.

Link para o comentário
Compartilhar em outros sites

Eu recomendaria uma instalação do 0 novamente, e antes de instalar o Lamp, fazer isso:

 

Desative o SELinux:

 

No arquivo /etc/selinux/config, comente desative esta varíavel: SELINUX=disabled

 

Ficando portanto:

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted
Link para o comentário
Compartilhar em outros sites

 

Eu recomendaria uma instalação do 0 novamente, e antes de instalar o Lamp, fazer isso:

 

Desative o SELinux:

 

No arquivo /etc/selinux/config, comente desative esta varíavel: SELINUX=disabled

 

Ficando portanto:

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

esse servidor esta com cpanel, e o SElinux esta desabilitado.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...

Informação Importante

Concorda com os nossos termos?