#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives
#
# GENERAL OPTIONS
#
[options]
ILoveCandy
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir = /
#DBPath = /var/lib/pacman/
#CacheDir = /var/cache/pacman/pkg/
#LogFile = /var/log/pacman.log
#GPGDir = /etc/pacman.d/gnupg/
#HookDir = /etc/pacman.d/hooks/
HoldPkg = pacman glibc
#XferCommand = /usr/bin/curl -L -C — -f -o %o %u
#XferCommand = /usr/bin/wget —passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
Architecture = auto
# Pacman won’t upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg =
#IgnoreGroup =
#NoUpgrade =
#NoExtract =
# Misc options
#UseSyslog
#Color
#NoProgressBar
CheckSpace
#VerbosePkgLists
#ParallelDownloads = 5
# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
#RemoteFileSigLevel = Required
# NOTE: You must run `pacman-key —init` before first using pacman; the local
# keyring can then be populated with the keys of all official Arch Linux
# packagers with `pacman-key —populate archlinux`.
#
# REPOSITORIES
# — can be defined here or included from another file
# — pacman will search repositories in the order defined here
# — local/custom mirrors can be added here or in separate files
# — repositories listed first will take precedence when packages
# have identical names, regardless of version number
# — URLs will have $repo replaced by the name of the current repo
# — URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
# [repo-name]
# Server = ServerName
# Include = IncludePath
#
# The header [repo-name] is crucial — it must be present and
# uncommented to enable the repo.
#
# The testing repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.
[testing]
#Include = /etc/pacman.d/mirrorlist
[core]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
[community-testing]
#Include = /etc/pacman.d/mirrorlist
[community]
Include = /etc/pacman.d/mirrorlist
# If you want to run 32 bit applications on your x86_64 system,
# enable the multilib repositories as required here.
[multilib-testing]
#Include = /etc/pacman.d/mirrorlist
[multilib]
Include = /etc/pacman.d/mirrorlist
# An example of a custom package repository. See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs
I am a noob on an i5 desktop. I could not update my system. Terminal reads as follows, after I type and enter «sudo pacman -Syu»
[sudo] password for user-name: ********
:: Synchronizing package databases...
error: failed to update core (unable to lock database)
error: failed to update extra (unable to lock database)
error: failed to update community (unable to lock database)
error: failed to update multilib (unable to lock database)
error: failed to synchronize all databases
Help!!
asked Mar 2, 2020 at 6:08
![]()
Thế Huynh PhạmThế Huynh Phạm
4611 gold badge4 silver badges11 bronze badges
If you’ve already deleted /var/lib/pacman/db.lck, like OP posted, and still got the same problem, try this:
sudo rm /var/tmp/pamac/dbs/db.lck
answered Nov 16, 2022 at 4:44
![]()
This can be solved by quitting Software Update program from task manager.
This worked for me.
answered Feb 16, 2021 at 17:32
![]()
I am a noob on an i5 desktop. I could not update my system. Terminal reads as follows, after I type and enter «sudo pacman -Syu»
[sudo] password for user-name: ********
:: Synchronizing package databases...
error: failed to update core (unable to lock database)
error: failed to update extra (unable to lock database)
error: failed to update community (unable to lock database)
error: failed to update multilib (unable to lock database)
error: failed to synchronize all databases
Help!!
asked Mar 2, 2020 at 6:08
![]()
Thế Huynh PhạmThế Huynh Phạm
4611 gold badge4 silver badges11 bronze badges
If you’ve already deleted /var/lib/pacman/db.lck, like OP posted, and still got the same problem, try this:
sudo rm /var/tmp/pamac/dbs/db.lck
answered Nov 16, 2022 at 4:44
![]()
This can be solved by quitting Software Update program from task manager.
This worked for me.
answered Feb 16, 2021 at 17:32
![]()
8 комментариев
![]()
- dr-helper
- ↓
-
15 мая 2022, 19:15
Да, уже несколько дней такая картина. С учетом того, что файл и данный адрес доступен только через vpn, можно делать вывод что он попал под блокировку в данном регионе. Ни на что не намекаю, но все же не приятно…
![]()
- Riko_crimea
- ↑
- ↓
-
16 мая 2022, 20:39
Да, через VPN работает (обновляет пакеты), а без — ни в какую. Симферополь, РФ.
Я надеялся, что хоть открытое ПО не будет подвергаться этим блокировкам, перешел на Linux, а оно вон как…
![]()
- dr-helper
- ↓
-
15 мая 2022, 21:23
Пока решилось так: обновил зеркала для своего региона, далее в терминале: sudo pacman -Rs $(pacman -Qdtq) и pamac update. Теперь все устанавливается. Правда у меня KDE, но и в Gnome должно сработать.
![]()
- kart12
- ↓
-
16 мая 2022, 21:22
СПб, Екб. Такая проблема с конца апреля. Проявляется не всегда.
Через терминал и yay проблем с установкой нет.
![]()
- zavr
- ↓
-
22 мая 2022, 12:36
![]()
- BorisGubanov
- ↑
- ↓
-
9 июня 2022, 13:27
Здравствуйте,
Информируем Вас, что доступ к указанному Интернет-ресурсу в рамках исполнения требований статьи 15.1 Федерального закона от 27.07.2006 года № 149-ФЗ «Об информации, информационных технологиях и защите информации», не ограничивается.
Консультант горячей линии по вопросам
реализации статьи 15.1 Федерального закона
«Об информации, информационных
технологиях и о защите информации»
Это мне ответили на горячей линии. Но то, что обновляется только с VPN — факт
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.
15 мая, 2017 11:51 дп
25 768 views
| 1 комментарий
MariaDB, mySQL
WordPress – одна из популярнейших открытых систем управления контентом. Изначально платформа WordPress разрабатывалась для блогов, однако со временем она стала более гибкой и производительной, и теперь подходит для обслуживания практически любого сайта. WordPress разрабатывается почти 15 лет; сегодня это очень надёжная и ошибкоустойчивая система, однако и в ней иногда случаются сбои и ошибки.
Ошибка установки соединения с базой данных (Error Establishing Database Connection) – одна из самых распространённых ошибок WordPress. Обычно её вызывает:
- Сбой БД (чаще всего из-за нехватки памяти).
- Неправильные учётные данные БД в настройках WordPress.
- Нарушение таблиц базы данных WordPress.
В этом руководстве вы узнаете, как определить причину ошибки установки соединения с БД и исправить её.
Требования
- Машина с предустановленной платформой WordPress.
- Доступ к sudo.
- База данных должна быть запущена на одной машине с WordPress.
- Учётные данные БД: имя пользователя, пароль и имя базы данных для WordPress. Эта информация была создана во время начальной настройки WordPress.
1: Проверка памяти сервера
Для начала нужно убедиться, что MySQL работает, и что на сервере достаточно памяти для обработки данных WordPress.
Подключитесь к серверу по SSH:
ssh 8host@your_server_ip
Примечание: Если вы уверены, что правильно указали учётные данные, но у вас по-прежнему возникают проблемы при входе в систему, возможно, на сервере не хватает памяти или он не справляется с большой нагрузкой. Это случается из-за неожиданного роста трафика, и этим можно объяснить ошибку WordPress. Попробуйте перезагрузить сервер и подключиться снова.
Подключившись к серверу, убедитесь, что MySQL работает:
sudo netstat -plt
Команда netstat выводит информацию о сетевой системе сервера. Приведённая выше команда выведет имена программ, которые прослушивают соединения на сокете tcp (флаги –p, –l и –t соответственно). В выводе найдите mysqld:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 localhost:mysql *:* LISTEN 1958/mysqld
tcp 0 0 *:ssh *:* LISTEN 2205/sshd
tcp 0 0 localhost:smtp *:* LISTEN 2361/master
tcp6 0 0 [::]:http [::]:* LISTEN 16091/apache2
tcp6 0 0 [::]:ssh [::]:* LISTEN 2205/sshd
tcp6 0 0 ip6-localhost:smtp [::]:* LISTEN 2361/master
Если такая программа есть в выводе команды, значит, сервер MySQL запущен и прослушивает соединения. Если вы не нашли MySQL в списке, попробуйте запустить сервер вручную. Обычно для этого используется команда:
sudo systemctl start mysql
Примечание: В некоторых дистрибутивах Linux (например, в CentOS) используется mysqld вместо mysql.
Сервер MySQL должен запуститься. Чтобы убедиться в этом, снова запустите netstat и найдите в выводе строку mysqld.
Для корректной работы MySQL и WordPress нужно довольно много памяти. Сервер MySQL может прекратить работу из-за нехватки памяти. Чтобы убедиться, что ошибка произошла по этой причине, проверьте логи ошибок MySQL.
zgrep -a "allocate memory" /var/log/mysql/error.log*
Команда zgrep выполнит поиск по логам, включая более старые логи в архиве с расширением .tar.gz. Команда будет искать в логах error.log* из каталога /var/log/mysql/ все строки с пометкой allocate memory.
2017-04-11T17:38:22.604644Z 0 [ERROR] InnoDB: Cannot allocate memory for the buffer pool
Если вы видите на экране такую строку (или несколько таких строк), значит, причина ошибки подключения к БД в нехватке памяти для работы MySQL. Возможно, это произошло из-за резкого роста трафика. Если в выводе много таких строк, значит, сервер сталкивается с нехваткой памяти регулярно. В таком случае рекомендуется переместить ресурс на сервер с большим объёмом памяти. Большинство провайдеров облачного хостинга позволяют просто обновить свой сервер с минимальным временем простоя.
Если команда zgrep не вернула ничего, памяти на сервер достаточно для обработки данных WordPress и MySQL. Если ошибка установки соединения с БД не исчезла, нужно проверить настройки WordPress и убедиться, что в них указаны правильные данные о MySQL.
2: Проверка учётных данных MySQL
Если вы недавно переместили установку WordPress на новый сервер (или сменили хостинг-провайдера), вам нужно обновить информацию о БД в настройках WordPress. Они хранятся в PHP-файле wp-config.php.
Найдите этот файл:
sudo find / -name "wp-config.php"
Команда выполнит поиск в root-каталоге и найдёт все файлы wp-config.php. Если такой файл существует, команда выведет путь к нему:
/var/www/html/wp-config.php
Откройте его в текстовом редакторе:
sudo nano /var/www/html/wp-config.php
Этот файл содержит много переменных и комментариев к ним. В начале файла можно найти строки, отвечающие за настройки БД:
/** The name of the database for WordPress */
define('DB_NAME', 'database_name');
/** MySQL database username */
define('DB_USER', 'database_username');
/** MySQL database password */
define('DB_PASSWORD', 'database_password');
Убедитесь, что эти три переменные содержат правильные данные. Если здесь указаны неправильные значения, откорректируйте их, а затем сохраните и закройте файл (CTRL-O, CTRL-X). Даже если теперь в файле указана валидная информация о БД, стоит попробовать подключиться к базе данных из командной строки, чтобы убедиться, что ошибка исчезла. Скопируйте из конфигурационного файла и вставьте данные в следующую команду:
mysqlshow -u database_username -p
Команда запросит пароль. Вставьте пароль и нажмите Enter. Если вы при этом получили ошибку Access denied, значит, вы указали неправильное имя пользователя или пароль.
Если учётные данные введены правильно, вы увидите на экране список баз данных, к которым есть доступ у текущего пользователя.
+--------------------+
| Databases |
+--------------------+
| information_schema |
| database_name |
+--------------------+
Убедитесь, что в этом списке есть БД, указанная в конфигурации WordPress. Перезапустите сайт и убедитесь, что ошибка подключения к БД исчезла.
Если исправить ошибку не удалось, попробуйте восстановить БД.
3: Восстановление базы данных WordPress
Иногда база данных WordPress может быть повреждена во время неудачного обновления, сбоя базы данных или из-за неправильного плагина. Эта проблема может отображаться как ошибка установки соединения с базой данных. Если проблему не удалось устранить с помощью предыдущих методов, попробуйте восстановить базу данных.
WordPress предоставляет встроенную утилиту для восстановления БД. По умолчанию она отключена (поскольку к ней нельзя ограничить доступ, а значит, она представляет угрозу безопасности сервера).
Откройте wp-config.php.
sudo nano /var/www/html/wp-config.php
Вставьте в файл такую строку:
define('WP_ALLOW_REPAIR', true);
Эта строка включает функцию восстановления БД.
Сохраните и закройте файл.
Откройте браузер и перейдите по следующему адресу:
http://www.example.com/wp-admin/maint/repair.php
Примечание: Вместо www.example.com укажите свой домен или IP.
На экране появится страница восстановления базы данных:
WordPress can automatically look for some common database problems and repair them. Repairing can take a while, so please be patient. […]
Нажмите кнопку Repair Database. На экране появится страница с результатами, где вы сможете отслеживать проверку и исправления в реальном времени.
После этого снова откройте файл wp-config.php и удалите из него строку, которая включает поддержку утилиты восстановления БД.
Проверьте работу сайта. Если WordPress обнаружил в БД ошибки, которые не удалось исправить, попробуйте восстановить БД из резервной копии.
Читайте также: Импорт и экспорт баз данных MySQL и MariaDB
Если утилита WordPress не обнаружила проблем с базой данных, значит, БД также не является источником ошибки соединения. Возможно, это какая-то временная ошибка.
В большинстве случаев ошибку установки соединения можно устранить при помощи предложенных выше методов. Однако иногда источником ошибки являются атаки или нехватка серверных ресурсов.
Часто источником повышенного трафика (а также низкой производительности и ошибок) являются brute-force атаки. Чтобы узнать, как смягчить атаки WordPress, читайте статью Защита WordPress от взлома XML-RPC в Ubuntu 14.04.
Чтобы сэкономить ресурсы сервера, настройте кэширование WordPress. Полезные инструкции вы найдёте в руководстве Настройка кэширования Redis для ускорения WordPress.
Tags: MySQL, WordPress
Я новичок на рабочем столе i5. Я не смог обновить свою систему. Терминал выглядит следующим образом после того, как я наберу и ввожу «sudo pacman -Syu».
[sudo] password for user-name: ********
:: Synchronizing package databases...
error: failed to update core (unable to lock database)
error: failed to update extra (unable to lock database)
error: failed to update community (unable to lock database)
error: failed to update multilib (unable to lock database)
error: failed to synchronize all databases
Помогите!!
2 ответа
Лучший ответ
Это можно решить, выйдя из программы Обновление программного обеспечения из диспетчера задач. Это сработало для меня.
0
TECH VINEYY
16 Фев 2021 в 20:32