wakadakawaka 5623872375 лоап
2025-05-31 13:26:00 +05:00

145 lines
6.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: Утилита ibcmd.exe
slug: администрирование/утилита-ibcmd-exe
---
Утилита **`ibcmd.exe`** входит в состав поставки сервера **1С:Предприятие**.
С её помощью можно выгрузить информационную базу в формате `.dt` **без получения монопольного режима**. Для этого нужно:
1. Создать текстовый файл.
2. Задать ему расширение `.bat`.
3. В теле файла прописать следующую строку:
```bat
"C:\Program Files\1cv8\{ВЕРСИЯ ПЛАТФОРМЫ}\bin\ibcmd.exe" infobase dump ^
--db-server={ИМЯ СЕРВЕРА} ^
--dbms=MSSQLServer ^
--db-name={ИМЯ БАЗЫ НА СЕРВЕРЕ} ^
--db-user={ИМЯ ПОЛЬЗОВАТЕЛЯ SQL} ^
--db-pwd={ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ SQL} ^
"C:\backup\SQL_DB_NAME_date.dt"
```
## Пояснение параметров
- `--dbms` — тип SQL-сервера, например: `MSSQLServer`.
- `--db-server` — адрес или доменное имя SQL-сервера.
- `--db-name` — имя базы данных на SQL-сервере.
- `--db-user` — имя пользователя SQL, которому доступны нужные базы.
- `--db-pwd` — пароль пользователя SQL.
- `--user` — имя пользователя 1С (опционально).
- `--password` — пароль пользователя 1С (опционально).
> Ранее утилита могла работать без указания пользователя 1С.
Файл `C:\backup\SQL_DB_NAME_date.dt` — путь, по которому будет сохранена выгруженная база данных.
# Как исправить ошибку подключения к SQL Server через OLE DB (ошибка 53 или 1326)
Если при подключении к SQL Server возникает ошибка:
```
Microsoft OLE DB Driver for SQL Server: Named Pipes Provider: Could not open a connection to SQL Server [53] или [1326]
```
Это значит, что клиентская машина не может установить сетевое соединение с сервером SQL Server. Вот план действий для устранения проблемы.
---
## Проверка доступности сервера и порта
### Проверка наличия telnet
Для проверки порта необходимо наличие утилиты `telnet`. Чтобы установить её:
1. Откройте **Панель управления****Программы****Программы и компоненты****Включение или отключение компонентов Windows**.
2. Найдите и включите компонент **Клиент Telnet**.
Или с помощью команды (от имени администратора):
```cmd
dism /online /Enable-Feature /FeatureName:TelnetClient
```
### Проверка сетевой доступности
1. Проверьте доступность сервера по сети:
```bash
ping 192.168.1.151
```
2. Проверьте доступность порта 1433:
```bash
telnet 192.168.1.151 1433
```
- Если соединение устанавливается (чёрный экран) — порт доступен.
- Если ошибка подключения — порт закрыт или сервер его не слушает.
---
## Настройка SQL Server
### Включение TCP/IP протокола
1. Откройте **SQL Server Configuration Manager**.
2. Перейдите в **SQL Server Network Configuration****Protocols for MSSQLSERVER**.
3. Убедитесь, что протокол **TCP/IP** включён (Enabled).
### Настройка порта TCP/IP
1. В том же окне откройте свойства TCP/IP.
2. Перейдите на вкладку **IP Addresses**.
3. Для всех IP-адресов установите `Enabled = Yes`.
4. В секции **IPAll** укажите:
- **TCP Dynamic Ports** = (пусто)
- **TCP Port** = **1433**
### Перезапуск SQL Server
После изменений перезапустите службу SQL Server:
```bash
services.msc → SQL Server (MSSQLSERVER) → Перезапустить
```
---
## Проверка фаервола
1. Убедитесь, что фаервол на сервере разрешает входящие подключения на порт **1433/TCP**.
2. Если не настроено правило, создайте новое правило в **Брандмауэре Windows**:
- Разрешить входящие подключения на **TCP порт 1433**.
3. Для тестирования можно временно отключить фаервол (если это безопасно).
---
## Дополнительно
- Если используется **Named Instance** (например, `SERVER\INSTANCE`), проверьте, что запущена служба **SQL Server Browser**.
- Проверьте, что на сервере SQL Server действительно слушает порт 1433:
```bash
netstat -ano | findstr :1433
```
Если ничего не найдено — сервер не слушает порт, значит настройки протоколов неправильные или сервер не перезапущен.
---
## Итого
- Убедитесь, что сервер доступен по сети.
- Убедитесь, что порт 1433 открыт и сервер его слушает.
- Проверьте настройки протоколов в SQL Server Configuration Manager.
- Проверьте настройки фаервола.
- Проверьте, установлен ли Telnet для диагностики портов.
После выполнения этих шагов ошибка подключения должна исчезнуть.