Як змінити префікси бази даних mysql два способи

Всім привіт! Дорогі мої Новомосковсктелі. У своєму останньому звіті за місяць я написав, що планую в найближчому майбутньому зайнятися проблемою безпеки свого блогу. А якщо точніше, то я хочу на основі свого досвіду написати невелику книжку про те, як захистити свій сайт на вордпресс.
Як виявилося, ця тема дуже обширна, так як у сайтів є безліч слабких місць, якими можуть скористатися хакери або просто «нехороші» люди
Сьогодні я вирішив розповісти вам, як змінити префікси бази даних mysql.
За замовчуванням у всіх блогерів, які ведуть сайти на вордпресс, префікси мають значення «wp_». А хакери або спеціальні програми повинні знати мінімум інформації про внутрішній устрій вашого ресурсу. Тому це значення краще змінити, тим більше що є така можливість.
До речі, товариші, а ви знаєте, навіщо взагалі потрібні ці префікси? А справа в тому, що в одній базі даних можуть бути таблиці для різних блогів. А щоб система відрізняла ці таблиці, якраз і потрібні ці префікси. Наприклад, для блогу №1 - «wp1», для блогу №2 - «wp2».
Невелика новина по темі розвитку мого ресурсу. Кілька днів тому помітив, що плагін від LiveInternet став показувати пошукової трафік для мого блогу. Зараз це значення 2%. Ось, радію дрібницям.
А ще з кожним днем я піднімаюся в рейтингу доменів другого рівня по LiveInternet. Приблизно 2-3 тижні тому моє творіння займало десь 75 000-ве місце, а зараз ми вже на позначці в 49000
А писав я цю статтю приблизно тиждень, а публікується вона тільки сьогодні. Тому на скріншоті нижче вже інші цифри (вони стали ще краще)

Повернемося до теми статті.
Передісторія
Спочатку я думав, що це дуже складний процес, щоб все зробити самому. Звичайно, я знав, що є і спеціальні плагіни, які вирішують цю проблему, але я завжди намагаюся обійтися своїми силами, не дуже довіряю плагинам. Тим більше я люблю колупатися в блозі. Він же мій і я хочу знати про нього все.
Перша ідея була делегувати процес зміни префіксів на техпідтримку мого хостингу. Ці хлопці вже зарекомендували себе в моїх очах, кілька разів допомагали мені.
В результаті співробітник техпідтримки змінив префікси таблиць в моїй базі даних, але після цього у мене пропав доступ до адмінки мого сайту. Довелося їм повертати все в початковий стан

Але как не странно, мене це не зупинило. Я просто зайшов в яндекс і знайшов там непогану інструкцію, яка мені здалася цілком логічною, і я вирішив спробувати щастя. Тим більше, в разі невдачі я нічого не втрачаю, тому що перед тим, як щось змінювати, я роблю резервні копії. А резервна копія бази даних взагалі робиться практично миттєво.
Перший спосіб. За допомогою плагіна
Хоч цей спосіб я і не використовував, але розповісти про нього необхідно. Упевнений, що не всі мої Новомосковсктелі люблять і хочуть робити все своїми руками.

За допомогою нього можна провести аудит безпеки вашого сайту. Ви побачите все його слабкі місця. Але що дуже добре, це розширення дозволяє не тільки виявити потенційні проблеми, а й усунути їх. Це також відноситься до префіксам таблиць бази даних.
Плагін має спеціальну сторінку для зміни префікса.

Перед внесенням змін рекомендується створити бекап бази даних.
Також творці це розширення не гарантують позитивний результат операції. У всіх бази даних різні, налаштування блогу різні, тому і результат не завжди однаковий.
Для зміни префікса введіть своє значення в поле «Change the Current» і натисніть «Start Renaming»
Але я цей спосіб використовувати не став, тому що вирішив все зробити власними руками за інструкцією.
Другий спосіб. вручну
В цьому випадку вам знадобиться:
- Доступ до бази даних mysql. Логін і пароль ви повинні отримати в панелі управління своїм хостингом при її створенні.
- Доступ до кореневої директорії сайту. Я використовую для цього ftp доступ, але також зазвичай є і файловий менеджер на хостингу. Мені більше подобається через FTP (потрібна програма filezilla або TotalCommander)
- Відсутність страху колупатися в своєму блозі
Для мене всі умови виконані. А як щодо вас? Чи готові йти до кінця?
Знайдену в інтернеті інструкцію я умовно розділив на три етапи:
- Міняємо префікси всіх таблиць в базі даних
- Окремо редагуємо вміст таблиць wp_usermeta і wp_options
- Злегка редагуємо файл wp-congig.php в кореневій директорії сайту
Перший етап

Важливо. Не забудьте зробити резервну копію!
У моїй базі даних знаходиться всього 43 таблиці. У вас скоріше за все буде приблизно так само. Тепер необхідно по черзі відкривати кожну таблицю і редагувати її назву. Для редагування натисніть на кнопку «операції в верхньому меню».
У блоці «параметри таблиці» замінюємо префікс в назві. Далі зберігаємо зміни і відкриваємо наступну таблицю і так далі, поки не дійдемо до останньої.

Це трохи тоскний процес, але будьте уважні, нічого не пропустіть, не допускайте помилок. Я витратив на це трохи більше 10 хвилин.
Другий етап
Це вже більш складний етап. Від вас буде потрібно уважність. Знаходимо таблицю options з новим префіксом, відкриваємо її. У таблиці є кілька колонок. У колонці «option_name» шукаємо всі записи, що починаються з wp_.
Щоб полегшити процес, рекомендую використовувати пошук, натисніть Ctrl + F і введіть WP_.
Зверніть увагу. що у таблиць кілька сторінок. Після редагування всіх записів на першій сторінці, переходимо на другу і так далі. У таблиці options у мене виявилося 9 сторінок.
Далі необхідно проробити те ж саме з таблицею usermeta. Вона значно коротше options, тому проблем не викличе. Потрібно буде редагувати значення в колонці «meta_key».

третій етап
Це останній і найпростіший етап. Знайдіть файл wp-config.php в кореневій директорії вашого сайту. Якщо ви користуєтеся не програмою FileZilla, як я, то можливо, вам доведеться завантажити цей файл на комп'ютер для його редагування.
Якщо ви не знаєте, що таке коренева директорія сайту, то знайдіть папку з вашим доменом і відкрийте її. Усе! Ви на місці.

Відкрийте цей файл, перейдіть майже в самий низ. Там ви знайде рядок: $ table_prefix = 'wp_'. Змініть це значення на своє. Збережіть зміни, завантажте змінений файл на хостинг.
Все готово. Мені дана інструкція допомогла.
Але все ж рекомендую вам відразу зайти на свій блог і все перевірити: чи все на місці, чи все працює. Сподіваюся, у вас буде все відмінно. Якщо ж щось не так, а таке можливо, скористайтеся резервною копією і поверніть все в початковий стан.
До зустрічі!
З повагою! Абдуллін Руслан
Давно не зустрічав хостинги, які обмежують для користувача кількість баз даних на сервері. Але іноді трапляється і таке, тому зручно розділити таблиці різних баз даних префіксами в назві цих самих таблиць. Але в першу чергу вся справа в безпеці. Використовуючи движок, до вихідного коду (а значить і структурі БД) якого може отримати доступ будь-хто, єдиними засобами для забезпечення безпеки залишаються префікси в назвах таблиць і обмежений доступ до панелі адміністрування CMS (в даній статті - wordpress).
До питання про плагіни. Вони при установці звідкись беруть же інформацію про префікс таблиць, тому і після його [правильної] зміни, будуть нормально встановлюватися.
Що стосується додавання префікса до назви таблиць вручну. Якби таблиць було більше 10-15, мені вже було б лінь робити це вручну.
Сам користувався таким скриптом:
Для тих, хто в цьому зовсім нічого не розуміє:
1) завантажити скрипт
2) вказати на початку параметри підключення до БД, старий префікс і новий префікс
3) залити на свій сервер і один раз звернутися до цього скрипту з браузера
4) видалити скрипт з сервера
Руслан - молодець, вже багато чого домігся і при цьому не варто на місці, розвивається. Бажаю йому удачі! Не треба думати, що прийшов злий ІТ-шник всіх критикувати