Установленна программа Medwork 3.1
При запуске на экране появляется сообщение «Нет доступа к базе данных LOCAL, возможно доступ запрещен».
Программа в данный момент работает локально на одном компьютере.
На нем же развернут MS SQL SERVER 2005.
При установке программы «Medwork 3.1» на нем была развернута база MedworkData_data.
При подключение к серверу SQL видим эту базу. Сервер SQL работает коректно и все службы запущены ( SQL SERVER и Обозреватель SQL SERVER).
Используется аутентификация Windows. Пользователь является членом группы Администраторы.
Заходим в «Управление сервером — Medwork».
Последовательно смотрим все пункты
1) Состояние сервера Medwork — Работает
2) Соединения — «ТК и МК» в нем 2 базы «GLOBAL» и «LOCAL». Заходим в Global. Нажимаем кнопку «Проверить подключение». Пишет «Проверка подключение выполнена».
Аналогично с LOCAL. Файл имеется и открывается в ACCESS. Также данные из файла можно получить выполнив подключение из Excel с той же строкой подключения что и в «Управление сервером — Medwork».
Лекция 3. API для доступа к базе данных из приложений
Вопрос: Почему не запускается программа?
- Для комментирования войдите или зарегистрируйтесь
Втр, 13/07/2010 — 14:36
Акмалов Эдуард
Для начала хотелось бы уточнить нормально ли работает MedWork локально? Имеется ввиду клиентское место установлено на той же машине, где и MedWork сервер.
Проанализировав Вашу ситуацию, видимо проблема заключается в следующем :
1) Скорее всего Вы устанавливали программу с правами администратора, и теперь у Вас нет доступа к папке где лежит файл local.mdb. Запустите MedWork от имени администратора, нажав пр. кнопкой мыши на ярлык — запустить от имени администратора.
Вам нужно открыть общий доступ на сервере к папке где находится файл local.mdb
2) Перейдите в панель управления — MedWork администратор — Cоединения — строка global — изменить — вторая вкладка (строка соединения) — троеточие — «1. Выберите или введите имя сервера» — Вы увидите строку «(local)SQLEXPRESS» — Вам надо будет вместо (local) ввести имя своего компьютера (пр. клик на «мой компьютер — свойства — имя компьютера — полное имя) в итоге у Вас получится что-то наподобии «Computer12345SQLEXPRESS», где Computer12345 — имя вашего компьютера.
3) Еще раз посмотрите настройки SQL на сервере. Сообщите нам имя вашего сервера, в строке соединения SQL.
Если это Вам не помогло, то Вы можете напрямую связаться со специалистами нашего отдела по ICQ, или телефону.
- Для комментирования войдите или зарегистрируйтесь
Втр, 13/07/2010 — 15:08
Все стоит на одном компьютере.
Акмалов Эдуард wrote:
1) Скорее всего Вы устанавливали программу с правами администратора, и теперь у Вас нет доступа к папке где лежит файл local.mdb. Запустите MedWork от имени администратора, нажав пр. кнопкой мыши на ярлык — запустить от имени администратора.Вам нужно открыть общий доступ на сервере к папке где находится файл local.mdb
Доступ к базе данных сайта
Пользователь входит в группу администраторов и он все и устанавливал. Файл используется только локально. Наверное не нужно давать общий доступ.
Для проверки доступа остановил все службы и перенес папку c программой в другое место.
Акмалов Эдуард wrote:
2) Перейдите в панель управления — MedWork администратор — Cоединения — строка global — изменить — вторая вкладка (строка соединения) — троеточие — Выберите или введите имя сервера» — Вы увидите строку «(local)SQLEXPRESS» — Вам надо будет вместо (local) ввести имя своего компьютера (пр. клик на «мой компьютер — свойства — имя компьютера — полное имя) в итоге у Вас получится что-то наподобии «Computer12345SQLEXPRESS», где Computer12345 — имя вашего компьютера.
Строка подключения выглядит слудующим образом:
Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=MedworkData;Data Source=9D2C0DD1A7734CE
Проверка подключения проходит без ошибок. И программа ругается ведь совсем не на то что не может подключиться к базе GLOBAL! 😕
Сообщение об ошибке выглядит следующим образом «Нет доступа к базе данных LOCAL», возможно доступ запрещен.
- Для комментирования войдите или зарегистрируйтесь
Источник: www.medwork.ru
Что делать при ошибках базы данных MySQL
Сегодняшняя заметка будет касаться только достаточно «узкой» категории читателей блога — речь пойдет о базах данных MySQL (и ошибках, при работе с ними. ).
Вообще, подобные базы данных используются многими движками сайтов (CMS), причем некоторые из них не блещут высокой безопасностью. Кроме этого, к базе MySQL возможен прямой доступ через веб-интерфейс. А если добавить к этому ошибки при копировании и переносе БД ( что бывает очень часто) , то, разумеется, всё это вкупе создает определенные риски для данных.
Собственно, ниже рассмотрим, что можно сделать, если появилась-таки ошибка, что база данных недоступна (или не может быть прочитана, или. ). Заранее скажу, что подобные ошибки далеко не всегда означает полную утрату БД, во многих случаях удается сравнительно-легко восстановить работоспособность сайта (интернет-магазина, и пр.).
Несколько рекомендаций, если возникла ошибка с MySQL БД
Совет 1
Если вы накануне никак не взаимодействовали с БД (например, не переносили сайт с одного сервера на другой), и всё работало в штатном режиме — возможно, что ошибка недоступности к базе связана с возникшими проблемами на стороне хостинг-компании (⇒ запрос в поддержку. ).
Кроме этого, обратите внимание на конфигурационные файлы CMS, отвечающие за доступ к базе данных. Возможно, что с самой БД всё в порядке, а вот путь (или пароль) для доступа к ней указан некорректно.
Например, в такой популярной CMS как WordPress, файлом для настройки доступа к БД явл. wp-config.php .
Параметры MySQL — эту информацию можно получить у хостинг-провайдера
Совет 2
Еще одна довольно очевидная рекомендация — проверить наличие бэкапа (резервной копии). Даже если вы самостоятельно не делали его — возможно его сделал хостинг-провайдер.
Кроме этого, как только возникла какая-то ошибка с БД — я бы порекомендовал в любом случае сделать ее копию (если это возможно). Вдруг диск начал «сыпаться», и в дальнейшем даже текущая БД исчезнет «на совсем».
PHP My Admin — экспорт базы данных
Совет 3
Далее следует попробовать провести восстановление БД встроенными средствами MySQL.
Итак, что нужно сделать в случае, если БД MySQL перестала запускаться:
- Откройте файл my . cnf и установите следующий параметр: innodb_force_recovery = 1 ;
- Перезапустите MySQL следующей командой: / etc / init.d / mysql restart ;
- Сделайте дамп БД и запакуйте его: mysqldump db | gzip > db . sql . gz ;
- Создайте новую БД : mysql -e create database “ new_ DB » ;
- Импортируйте туда данные : zcat database.sql.gz | mysql new_ DB .
Примечание!
my.cnf — это файл конфигурации MySQL. Чтобы найти файл, используйте команду: locate my.cnf
В Linux’e обычно он находится по такому пути:
/etc/my.cnf
# либо
/etc/mysql/my.cnf
Перезапуск MySQL подобным образом не ведет к запуску всех связанных процессов и в некоторых случаях позволяет открыть старую БД.
С помощью указанных команд мы пробуем создать дамп БД, затем импортировать его в новую базу, которую далее можно будет открыть обычным способом.
Если это получается , старую БД можно удалить. Кстати, если способ не помогает, и старая база не запускается, нужно пробовать другие значения параметра innodb_force_recovery , вплоть до 6.
При нормальном запуске БД система пытается запустить все процессы, включая и те, которые были завершены аварийно (например, из-за проблем с электричеством).
Благодаря опции innodb_force_recovery можно отключить некоторые параметры, которые мешают штатному запуску БД.
Цифры означают следующее:
- Запуск MySQL не останавливается, даже если система в процессе запуска обнаруживает поврежденные страницы;
- Отмена запуска фоновых операций;
- Отмена попыток отката транзакций;
- Отказ от расчета статистики и использования сохраненных изменений;
- Не учитывает логи отката при запуске;
- Не учитывает параметры ib_logfiles во время запуска.
Совет 4 (альтернативный способ восстановления БД)
Описанный выше способ довольно эффективен, хотя, к сожалению, может оказаться сложным для некоторых пользователей. Но работа с любым форматом базы данных — это всегда непросто.
Если нет желания редактировать конфиги, открывать командную строку и изучать синтаксис нужных команд, то нужен достаточно простой и дружелюбный в использовании инструмент, например, такой как Recovery Toolbox for MySQL . ()
Recovery Toolbox for MySQL — скриншот главного окна программы
Пожалуй, это самый простой и эффективный способ восстановления БД MySQL, именно то, что нужно большинству начинающих пользователей.
Вариантов, собственно, немного — разобраться со всем самому, потратив несколько дней, или в течение часа восстановить базу данных, продолжить работу и избежать убытков.
Стоит сразу отметить, что Recovery Toolbox for MySQL работает только с копией базы, поэтому никогда не испортит то, что осталось от старой БД. Почувствуйте разницу, копаясь в конфигах и настройках «боевого» сервера, и каждую минуту опасаясь сделать что-то неправильно, что приведет к полному уничтожению того, что еще осталось.
Как восстановить базу с помощью Recovery Toolbox for MySQL:
Для восстановления поврежденной БД MySQL при помощи этой программы нужно сделать следующее:
- Скачать Recovery Toolbox for MySQL с офиц. сайта: https://mysql.recoverytoolbox.com/ru/;
- Установить и запустить программу;
- Выбрать папку, в которой хранятся файлы поврежденной базы данных MySQL (предварительно создайте копию );
- Выбрать поврежденную базу данных из списка
- Запустить анализ выбранной БД;
- Просмотреть результаты восстановления: таблицы, объекты, индексы;
- Настроить способ сохранения восстановленных данных;
- Сохранить данные (доступно в полной версии). Пример на скриншоте ниже.
Пример восстановления БД
Программа загружается совершенно бесплатно и устанавливается без регистрации. С помощью Recovery Toolbox for MySQL можно бесплатно просматривать восстановленные данные, оценивать эффективность работы.
Можно даже подсмотреть какие-то изменения и легко внести их руками в «протухший», но еще пригодный к использованию бэкап. Заплатить предложат только в том случае, если потребуется сохранить восстановленные данные, пересоздать базу MySQL и подключить ее к системе.
База восстановлена — сохранить?
«Пару слов» о безопасности при работе с Recovery Toolbox for MySQL
Самое главное – программа всегда работает только с копией исходной базы, поэтому этот способ восстановления намного надежнее, чем вносить изменения в конфиги БД и смотреть, что из этого получится. Помните, попытка ремонта БД на «продакшн» сервере может окончательно добить ее, такое бывает даже у опытных админов.
Также стоит отметить, что Recovery Toolbox for MySQL не использует сторонние подключения. В процессе восстановления (может занять довольно продолжительное время, в зависимости от размеров исходной базы данных) ПО не использует доступ к Интернет.
Проконтролировать отсутствие подозрительных подключений можно разными способами, самым простым из которых является физическое отключение сетевого кабеля.
Есть способ чуть сложнее: установить анализатор сетевого траффика (советую WireShark, NetLimiter ) и проверить, не идут ли подозрительные пакеты от Recovery Toolbox for MySQL .
Конечно, этот способ предполагает некий здоровый энтузиазм, желание познать новое (мануалы на WireShark совсем немаленькие) и, самое главное, наличие свободного времени.
Дополнения по теме — не помешают!
Пост по заметкам
Источник: ocomp.info
Ошибка «отсутствует исключительный доступ к базе данных» в Access
Если несколько пользователей используют одну базу данных Microsoft Access и вы пытаетесь открыть определенный объект формы или отчета, появляется следующее сообщение об ошибке:
В настоящее время у вас нет доступа к базе данных.
Причина
В следующем сочетании параметров и условий инициируется обновление объекта.
- Для нескольких пользователей открыт один и тот же файл базы данных.
- Выбран параметр » Сжать при закрытии базы данных».
- Выводятся сведения о автозамене имен и выполняются параметры базы данных автозамены имен .
- Объект формы или отчета, который вы пытаетесь открыть, включает внедренный макрос в событие элемента управления или формы.
В этом случае Access пытается сохранить изменения, но не сможет получить монопольный доступ к объекту.
Решение
Чтобы избежать этой ошибки, выполните одно из указанных ниже действий.
- Используйте подход с разделением баз данных, чтобы у каждого пользователя была локальная копия серверной базы данных. Дополнительные сведения можно найти в разделе разделение базы данных Access.
- Снимите флажок Сжимать при закрытии на странице Параметрыфайлов >->текущую базу данных — >Параметры приложения.
- Снимите флажок выполнять автозамену имен на страницеПараметры > >текущую базу данных — >Параметры автозамены имен.
- Удалите внедренные макросы из формы или отчет и замените их именованными макросами или процедурами обработки событий VBA.
Источник: support.microsoft.com