Para pacotes RPM (e o CentOS é certamente um sistema RPM) você precisa ser root para executar o instalador do rpm. O instalador do RPM precisa gravar em alguns pacotes de rastreamento do dbs, e você precisa ser root para escrever para eles. OK, bem, o mysql permite que você instale a partir de um tarball, certo? ( link ). Bem, sim, mas há um postinstall que você precisará executar, que precisará ser root para fazer.
Os RPMs podem ter etapas de pré e pós-instalação fora do despejo de arquivos. estes podem estar alterando arquivos de configuração, adicionando / excluindo usuários. Em geral, você pode precisar ser root para fazer isso. Mesmo sem scripts, você geralmente instala em diretórios que somente o root pode instalar.
Em outro comentário, você menciona outros pacotes instalados que não precisavam ser root. Para esses pacotes, tenho certeza que:
- Você instalou a partir de um tarball, não de um RPM.
- Você instalou em um diretório que não é do sistema
- O código não foi vinculado a nenhum diretório específico (alguns códigos são compilados para caminhos específicos)
- Não havia necessidade de pós-instalação (nenhuma configuração do sistema em
/etc
, nenhum novo usuário como o MySQL precisa)