EspañolDeutschFrançaisItalianoPortuguêsРусскийΕλληνικά日本語中文(简体)हिन्दी; हिंदीالعربية
Сделать основным языком
PF вопросы - Форум

В 10 Основные ошибки о MySQL, что мы делаем PHP программистов

Веб-мастеров и SEO  
 
В 10 Основные ошибки о MySQL, что мы делаем PHP программистов

Когда программы в PHP и ваше приложение начинает иметь определенные Размах крыльев, наиболее логичным, что вам нужно поддержать вас в система управления базами данных para almacenar y manipular cualquier dato referente a la misma. En el caso de PHP, el sistema usado en mayor medida es MySQL.

No resulta fácil construir una base de datos sólida, надежный, que esté libre de inconsistencias y vulnerabilidades y que, Поэтому, tenga una estructura en base a alguna de las formas normales más comúnmente usadas. Por lo que es habitual que, como programadores en PHP, caigamos en alguno de los principales errores a la hora de trabajar con MySQL.

 

1. Usar MyISAM en lugar de InnoDB

MyISAM es el motor configurado по умолчанию en la instalación de MySQL но, a menos que aún tengas tu base de datos en desarrollo o tu proyecto sea bastante simple, ES целесообразно Использование InnoDB. Éste admite транзакции, esenciales para la integridad de los datos. В дополнение, a la hora de insertar o actualizar un registro, solo bloquea a éste, y no a la tabla entera como hace MyISAM, teniendo un efecto positivo sobre el производительность, sobre todo en las escrituras.

 

2. No usar las funciones adecuadas para MySQL de PHP

PHP обеспечивает funciones específicas para la conexión y uso de MySQL. Funciones como mysql_connect, mysql_query, … Estas funciones resultaron mejoradas para versiones de PHP igual o superior a la 4.1.3, por lo que es aconsejable usar esta última, вызов MySQLi. Ésta presenta una serie de преимущества como una intefaz orientada a objetos, prevención de ataques de inyección de SQL mediante las preparedStatements, увеличение производительности, и т.д..

 

3. No sanear las entradas de usuario

Для no sanear в entradas del usuario y usarlas para crear una sentencia SQL, la cual ejecutaremos sobre la base de datos, estamos dando lugar a una Уязвимость permitiendo la inyección de código SQL en los campos desde los cuales tomamos dichos valores.

Если, по Пример, estamos manejando un login de usuario, y al obtener los datos del formulario los asignamos directamente de la siguiente forma:

Si en el campo имя introdujéramos el valor admin’; –“ (без кавычек), la cadena SQL resultante sería la siguiente:

Con lo que el usuario accedería прямо sin introducir любой из пароль, además de acceder como administrador, Если Админ fuese el nombre de algún usuario administrador.

 

4. No usar la codificación UTF-8

Utilizar esta codificación evita muchos problemas из internacionalización, ya que debemos tener en cuenta que nuestro sitio web no solamente será accedido desde nuestro propio país, sino desde países cuyos juegos de caracteres difieren mucho de los nuestros.

 

5. Hacerlo todo mediante PHP

Es habitual realizar toda la codificación mediante el lenguaje PHP, incluso aquellas funciones que resultarían mucho más rápidas si las realizara el propio gestor de bases de datos. Например, utilizar un петля en PHP para calcular un promedio, sumando todos los valores de un conjunto de registros, en vez de usar la función nativa de MySQL, AVG().

Так же, existe la posibilidad de codificar funciones y procedimientos internos в собственной базе данных, favoreciendo el rendimiento de nuestra aplicación en términos globales.

 

6. No optimizar las consultas

В 99% Это PHP приложений производительности проблемы вызванные базы данных. Вы должны знать что простой Плохой запрос Это может вызвать узкое место на нашем веб-сайте, Поэтому рекомендуется выполнять Оптимизация консультации тяжелее.

Существуют приложения и скрипты Вам будет рассматривать ваш сервер MySQL и даст вам Советы para mejorar su rendimiento, а так они будут показывать вам возможные запросы, которые должны быть оптимизированы.

 

7. Использование неправильных данных типов

MySQL предоставляет набор разнообразные типы (числовое, цепь, время, Дата, …). Если вы собираетесь хранить Дата, использовать тип ДАТЬ ВАМ o DATETIME, Вместо использования ЦЕЛОЕ ЧИСЛО o СТРОКА, сделать больше сложные консультации.

Часто, заманчиво для создания вашего типы собственных данных и хранить их в базе данных как PHP сериализовать объекты. Хотя Управление базы данных будет легче, Вы позволит предотвратить легко выполнять Поиск и запросы о сохраненных данных.

 

8. Использовать звездочку (*) в запросах на ВЫБОРКУ

Никогда не используйте звездочку в ходе консультаций ВЫБЕРИТЕ, Если это не строго необходимые. Попробуйте сделать всегда консультацию на полях, которые вам действительно нужно, los demás son recursos gastados напрасно.

 

9. Не индексировать или sobre indexacion

Обычно, в индексы они применяются к любому столбцу, по которому запрос SELECT будет выполнять его, где, к полезным Создание индексов для запросов, которые потребляют больше ресурсов и те, которые обычно используются.

Так же, Добавить индексы для каждого столбца Вы можете сделать это падение производительности потому, что сервер, к которому они должны быть заново для каждой вставки или обновления в таблице.

 

10. Забудьте о резервном копировании

Трудно поверить, базы данных сбой, а также жесткие диски или другие аппаратного или программного обеспечения могут иметь сервер размещения баз данных. Если веб-приложение имеет определенные значение, Представьте себе, потеряв удар всю информацию о нем.

Чтобы избежать этого, Это обычное для регулярно делать резервные копии, или просто, запланировать их Это осуществляется автоматически.

 

Как вы видите, Это просто 10 Основные ошибки PHP-разработчики могут или склонны совершать при работе с диспетчером базы данных MySQL. Излишне говорить, что, Помимо этого, так хорошо известны, Системные базы данных, Существует другие решения То же самое надежный и хороший, и что они могут быть также вариант для любого из проектов или веб-приложений, которые мы должны развивать под PHP.

Присоединиться к вам к каналу Телеграмма

Оставьте нам комментарий или ввестиФорум
Share on Facebook Tweet about this on Twitter Share on Google+ Pin on Pinterest Share on Reddit Share on VK Share on StumbleUpon Share on Tumblr Share on LinkedIn Email this to someone Print this page

Родственные статьи