Las instrucciones breves de instalación para WordPress ( "5 minutos" ) indican que:
Cree una base de datos para WordPress en su servidor web, así como un usuario de MySQL que tenga todos los privilegios para acceder y modificarlo.
Al configurar un nuevo blog profesionalmente, me preguntaba cómo eso se asigna a lo que me ofrece la configuración de permisos / privilegios de usuario de la base de datos MySQL:
- Datos:
SELECT
,INSERT
,UPDATE
,DELETE
- Definición:
CREATE
,ALTER
,DROP
- Extra:
INDEX
- Más:
LOCK TABLES
REFERENCES
CREATE TEMPORARY TABLES
CREATE VIEW
SHOW VIEW
CREATE ROUTINE
EXECUTE
ALTER ROUTINE
Estoy bastante seguro de los primeros tres grupos, los denominé Datos, Definición y Extra aquí. Pero, ¿qué pasa con los otros debajo de la entrada Más ? Normalmente diría que no son necesarios, pero me gustaría obtener una segunda opinión.
"Todos los privilegios" por lo general significa que debe otorgarle todo al usuario. Sin embargo ...
He encontrado al menos un artículo que afirma que el usuario de MySQL solo necesita:
Profundizando , descubrí que para funcionar completamente (actualizaciones automáticas, instalación / desinstalación de complementos, etc.), WordPress requiere algunos permisos adicionales:
Además, no se hace referencia, pero tiene sentido:
Pero esas son las únicas dos referencias sólidas que puedo encontrar que están respaldadas por opiniones publicadas en otros lugares. Todavía te animo a que te quedes con GRANT ALL, pero si debes limitar tu uso de DB, comienza con estos 7 privilegios y prueba completamente para asegurarte de que las cosas funcionen como se espera.
fuente
Esto es lo que el Codex tiene que decir al restringir los privilegios de usuario de la base de datos:
http://codex.wordpress.org/Hardening_WordPress
fuente
Con respecto a la "Nota" en la publicación de redburn, el Codex de Wordpress también tiene una Advertencia que también debe leer sobre actualizaciones y cambios en el esquema de la base de datos ...
(Editar: Sin embargo, me doy cuenta de que ya NO VO "OTORGAR" en la lista de privilegios al crear o actualizar un usuario. ¿Quizás debería agregarse "CREAR" a la lista? ¿Alguien tiene información al respecto? - usando Hostgator cPanel , Marzo de 2016 -)
Códice: http://codex.wordpress.org/Hardening_WordPress
fuente
Mi opinión es la misma que @EAMann arriba, así como las fuentes a las que hizo referencia: GRANT ALL es necesario para garantizar que su sitio sea funcional y esté preparado para el futuro. Incluso en un sitio de producción, intente atenerse al manual del usuario.
Como alguien que aporta código al núcleo de WordPress y algunos complementos, le recomiendo que conserve los privilegios de base de datos predeterminados como se sugiere en el manual del usuario (OTORGUE TODOS LOS PRIVILEGIOS EN wpdatabasename. * A "wordpressusername" @ "hostname").
El código fuente de WordPress (tanto presente como futuro) asume que el usuario de WordPress DB tiene todos los privilegios de DB para la base de datos de WordPress dada. Si su configuración pierde algún privilegio de base de datos, puede tener problemas al actualizar WordPress y agregar más complementos.
Por lo tanto, no debería usar privilegios de DB diferentes de los privilegios de DB predeterminados recomendados por el manual, a menos que sepa lo que está haciendo, tenga necesidades muy específicas y no olvide que tiene privilegios de DB personalizados.
Desde entonces, la página del Codex se ha actualizado sobre cómo hacer esto con ejemplos en varios sistemas y capturas de pantalla. https://codex.wordpress.org/Installing_WordPress#Step_2:_Create_the_Database_and_a_User
Crear un nombre y usuario de Databse (a través de PHPMyAdmin): https://codex.wordpress.org/Installing_WordPress#Using_phpMyAdmin
Creación de un nombre y usuario de Databse (a través del cliente de línea de comandos MySQL): https://codex.wordpress.org/Installing_WordPress#Using_the_MySQL_Client
fuente