F.A.Q. по установке программы и необходимых компонентов

F.A.Q. по установке программы и необходимых компонентов

19.04.2024

Изменение имени компьютера с установленным экземпляром MS SQL Server — не самая хорошая идея, поскольку после переименования в работе SQL могут возникнуть некоторые проблемы. Чтобы избежать этих проблем, необходимо обновить системные метаданные таким образом, чтобы отобразить в них изменение имени компьютера.

Сделать это можно с помощью несложного SQL запроса. Так выглядит запрос для дефолтного экземпляра SQL Server:

sp_dropserver ″old_name″;
GO
sp_addserver ″new_name″, local;
GO

А так для именованного:

sp_dropserver ″old_name\InstanceName″;
GO
sp_addserver ″new_name\InstanceName″, local;
GO

Для примера возьмем компьютер с установленным экземпляром MS SQL Server. Чтобы посмотреть текущее имя сервера, открываем SQL Management Studio и выполняем запрос:

select @@Servername

Как видите, имя сервера, полученное с помощью запроса (2012R2Std_Temp) не совпадает с именем компьютера (SQL_Test).

Поскольку в примере используется дефолтный экземпляр SQL Server, то для изменения имени выполним следующий запрос:

sp_dropserver ″2012R2Std_Temp″;
GO
sp_addserver ″SQL_Test″, local;
GO

После переименования необходимо перезапустить SQL Server. Сделать это можно из командной строки, командой:

net stop mssqlserver && net start mssqlserver

10

Моей работы компания имеет сервер MSSQL 2005. У меня есть два вопроса узнать текущий пользователь журналу и любой способ отправить предупреждающее сообщение:

Первый вопрос в том, есть ли T-SQL или SP для поиска текущего имени пользователя и имени машины. Если пользователь использует имя SQL-сервера для удаленного доступа к SQL-серверу, есть ли способ узнать имя этого окна пользователя (имя для входа в окна)?

Мой следующий вопрос: если я могу получить имя пользователя или идентификатор, есть ли способ отправить предупреждающее сообщение, например, «в настоящее время SQL-сервер очищается или резервное копирование, пожалуйста, не входите в систему в это время» , Наверное, это может быть сложно. Возможно, мне придется отправить электронное письмо пользователю.

Сервер SQL доступен только в компании. SQL-сервер имеет список пользователей в качестве пользователей входа: пользователи Windows, пользователи SQL и sa.

  • 3 ответа
  • Сортировка:

    Активность

30

SELECT SUSER_SNAME(), HOST_NAME()

Если соединение является «sa» (или любым другим логином SQL), вы не можете найти имя пользователя домена/окна. SQL Server знает, что это «sa» или это логин SQL.

HOST_NAME может быть и ненадежным, его можно установить в строке подключения («Имя приложения»). Или это может быть расплывчатым, например, «Microsoft Office» для по умолчанию для Access, Excel и т.д.

Вы можете вернуться назад с помощью client_net_address в sys.dm_exec_connections и соответствует MAC-адрес для IP и выяснить, кто вошел в...

4

An Самый простой способ узнать, как хост и пользователь является

EXEC sp_who2;

Где вы получите некоторую другую информацию, которая может быть хорошо, чтобы знать, как если бы пользователь активен и так далее... это не решает проблемы, объявлено gbn.

3

Благодарим за все ваши предложения. Я пробовал все методы, и я думаю, что метод Йоакима Бэкмана удовлетворяет мою потребность. Вот краткое изложение того, что я узнаю.

  • Запрос данных sys.syslogins содержит только регистрационную информацию. Аккаунт не указывает текущую временную метку пользователя. Я попытался войти в систему из другого приложения в мой SQL, и этот запрос не перечисляет логин.
  • SELECT SUSER_SNAME(), HOST_NAME() отображает только одного пользователя на сервере SQL. Например, я вхожу в систему как мое имя для SQL-сервера. Результат этого запроса содержит только мое имя и имя машины. Этот запрос не отображает текущих пользователей на сервере SQL.
  • exec sp_who2 содержит информацию, которая мне нужна. В нем перечислены имя текущего имени пользователя, активное состояние, доступ к имени пользователя db и используемая команда.

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

DECLARE @retTable TABLE (SPID int not null , Status varchar (255) not null , Login varchar (255) not null , HostName varchar (255) not null , BlkBy varchar(10) not null , DBName varchar (255) null , Command varchar (255) not null , CPUTime int not null , DiskIO int not null , LastBatch varchar (255) not null , ProgramName varchar (255) null , SPID2 int not null , REQUESTID INT) INSERT INTO @retTable EXEC sp_who2 SELECT Status, Login, HostName, DBName, Command, CPUTime, ProgramName -- * FROM @retTable --WHERE Login not like "sa%" -- if not interested in sa ORDER BY Login, HostName

При установке Microsoft SQL Server, внутреннее имя экземпляра SQL сервера создается на основании текущего имени хоста. Однако, при переименовании компьютера/сервера, имя SQL сервера в метаданных (хранится в sys.servers) не обновляется автоматически, в результате чего при работе с SQL могут возникать разные проблемы. В этой инструкции мы покажем, как корректно обновить метаданные в SQL и изменить имя сервера без полной переустановки MSSQL. Инструкция применима для отдельно стоящего (не кластерного) SQL Server версий от MS SQL 2000 до 2012.

Совет . Можно сменить только имя севера, изменить имя экземпляра (инстанса) SQL Server без переустановки нельзя.

Откройте консоль SQL Server Management Studio и с помощью следующего запроса проверьте текущее имя хоста и имя инстанса SQL:

Как вы видите:

  • Имя сервера (HostName): DESKTOP-V2OE3P0
  • Полное имя экземпляра SQL (ServerName): DESKTOP-V2OE3P0\SQLDB

Переименуем имя компьютер и перезагрузим его:

Rename-Computer -NewName Sql-Srv1 -Restart

Совет . Имя компьютера можно сменить и из свойств My Computer.

После перезагрузки попробуйте подключится к старому имени сервера SQL: DESKTOP-V2OE3P0\SQLDB. Появится ошибка, ведь имя сервера изменилось.

Cannot connect to DESKTOP-V2OE3P0\SQLDB.
A network-related or Instant-specific error occurred when establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interface, error: 26 – Error Locating Server/Instance Specified) (Microsoft SQL Server)

Еще раз проверим имя хоста и имя инстанса:

Select @@ServerName ServerName, Host_name() HostName

В данном случае имя инстанса не соответствует имени компьютера и ссылается на старое имя компьютера DESKTOP-V2OE3P0.

Чтобы изменить имя для именованного экземпляра SQL, выполните следующую команду TSQL.

Удалить старое имя:

sp_dropserver "DESKTOP-V2OE3P0\SQLDB";
Go

Добавим новое имя:

sp_addserver "Sql-Srv1\SQLDB", local;
GO

Если нужно сменить имя сервера у дефолтного экземпляра SQL Server команда такая:

sp_dropserver ″OldName″;
GO
sp_addserver ″NewName″, local;
GO

Дополнительные шаги

Если при выполнении команды sp_dropserver появится ошибка:

Msg 15190, Level 16, State 1, Procedure sp_dropserver, Line 56

Скорее всего, имеются удаленные подключения к серверу DESKTOP-V2OE3P0. Сбросить их можно такими командами. Для дефолтного инстанса:

sp_dropremotelogin DESKTOP-V2OE3P0;
GO

Для именованного:

sp_dropremotelogin DESKTOP-V2OE3P0\SQLDB;
GO

Проверим, что имя сервера в метаданных обновилось:

SELECT @@SERVERNAME AS ‘ServerName’

SELECT * FROM SYS.SERVERS

Как вы видите, имя сервера изменилось. Осталось перезапустить службу SQL Server:

net stop MSSQL$SQLDB && net start MSSQL$SQLDB

Важно!

  • Этот способ подойдет только для переименования отдельностоящего SQL сервера. Для переименования SQL Server в кластере Failover Cluster нужно использовать консоль Cluster Management.
  • Нельзя изменить имя сервера, участвующего в репликации или зеркалировании
  • Если установлены службы отчетов Reporting services, после переименования они будут недоступны (https://msdn.microsoft.com/en-us/library/ms345235.aspx)

Работает ли A-Number CRM под управлением операционных систем Windows XP, Windows Vista , Windows 7, Windows 8 , Windows 10 ?

Во избежание ошибок, программа должна запускаться от имени пользователя, которому разрешена запись на диск и в реестр.

Можно ли использовать MS SQL Server 2005, 2008, 2012 вместо MS SQL Server 2000.

Да! Начиная с версии 1.74

Внимание!! После установки MS SQL сервера убедитесь, что служба стартовала и то, что соединение с сервером настроенно корректно. (Для MS SQL с 2005 по 2012 это делается через - Диспетчер конфигурации SQL Server.)

Если существует подозрение, что клиентский компьютер не может соединиться с SQL сервером, как это можно проверить??

В командной строке клиентского компьютера, выполнить команду:

Только у кого установлен MS SQL 2000 (MSDE) !!! После /U введите имя пользователя, в данном случае sa, после /P введите пароль, после /S введите имя MS SQL сервера, для локального подключения можно оставить пустым. Вот примерно так выглядит команда:

OSQL /U sa /P sdfl380dsklj /S mycomp

Вы увидите приглашение: 1 >

Выполните команду select:

1> select * from sysfiles

Если Вы увидите результат запроса, значит соединение с SQL сервером существует.

Закончить сеанс командной:

В том случае если у Вас на компьютере отсутствует файл osql.exe Это исполянемый файл. Распакуйте его и положите в папку windows\system32, после чего можно исполнять команды из командной строки.

Для работы с MS SQL 2008 используйте утилиту: sqlcmd , для вызова справки по командам используйте: sqlcmd /?

или в командной строке клиентского компьютера, выполнить команду:

telnet [имя sql server-а или ip] 1433

Выглядеть будет так:

telnet 192.168.200.100 1433

(Служба telnet должна быть запущена)

Определение проблемы, соединения с SQL Server- ом!!

Расспаковать архив "Data Link.zip"

Извлекаем три файла - newudl.reg , nonewudl.reg , Data Link.UDL .

Исполянем два рег.файла - newudl.reg , nonewudl.reg , после этого запускаем файл - Data Link.UDL

В форме "Свойства связи с данными" в закладке - Поставщик данных - встаем на строку Microsoft OLE DB Provider for SQL Server , жмем кнопку - Далее.

На закладке - Подключение, выполняем настройку соединения и смотрим на каком шаге возникает ошибка.

Не запущена служба «MSSQLSERVER»

Войти в «Панель управления» - «Администрирование» - «Службы » , запустить службу «MSSQLSERVER»

Обратите внимание на тип запуска службы. Желателен тип: Авто.

Почему не устанавливается MSDE ??

Не установлена «Служба доступа к файлам и принтерам сетей Майкрософт».

Войти в «Панель управления» - «Сеть и удаленный доступ к сети» - “Подключение по локальной сети”.

В окне свойства подключения по локальной сети нажмите кнопку «Установить» .

Затем, следует выбрать пункт Служба и добавить «Служба доступа к файлам и принтерам сетей Майкрософт» . После чего следует перезагрузить компьютер и повторить установку MSDE .

Не запущена служба «Сервер»

Войти в «Панель управления» - «Администрирование» - «Службы » , запустить службу «Сервер»


Как включить лог инсталляции MSDE ??

Чтобы включить лог инсталляции, запустите инсталляцию из командной строки с таким ключем:

setup.exe /L*v C:\

Лог будет создан в корне диска С:\

Почему при установке MSDE , выдает ошибку:

A strong SA password is required for security reasons. Please use SAPWD switch to …….

?

Не назначен пароль для пользователя "sa" !!

Этот параметр задается в опциях файла setup.ini , формат строки должен быть такой:

SAPWD="AStrongPassword"

Вместо слова в кавычках впишите пароль в латинской раскладке.

Установка прерывается сама, без выдачи ошибок. В Program Files создаются нужные папки. А в конце установки они сами удаляются.

Вам нужно полностью снести с машины все упоминания о MS SQL которые остались от предыдущих попыток установки, перезагрузить компьютер и повторить инсталляцию!!

Сначала проверьте есть ли MSDE в списке установленных программ, и если стандартным способом деинсталлировать не удасться, тогда смело удаляйте полностью директорию C:\ Program Files\Microsoft SQL Server , и перезагрузите компьютер.

Внимание!!

Если ранее на Вашем компьютере было установлено программное обеспечение, которое работало под управлением MS SQL , то в директотрии: C:\Program Files\Microsoft SQL Server\MSSQL\Data возможно остались файлы баз данных, которые Вам в последствии могут пригодиться, выясните этот вопрос перед удалением!!

Вместо русского текста - вопросики

«Пуск» - «Панель управления» - «Язык и региональные стандарты» (закладка «Языки» ), жмем кнопку «Подробнее» - Языки и службы текстового ввода (закладка «Дополнительно» ) ставим галку в чек-бокс «Включить поддержку текстовых служб для всех программ» , жмем кнопку «Применить».

Как узнать имя моего SQL сервера??

Если Вы установили MSDE , или MS SQL Server то после перезагрузки компьютера должны были увидеть в трее значок SQL Server Service Manager (похож на бочонок с зеленой стрелкой). При наведении на этот значек стрелкой мыши, Вы увидете хинт с названием Вашего сервера. Запись выглядит так: Running -\\ xserver - MSSQLServer , название Вашего сервера находится сразу за двумя обратными слешами, то есть в приведенном примере - xserver .

Так же вероятнее всего оно совпадает с именем вашего компьютера.

Если Вы увидели ошибку, вот такого плана: invalid column name...

Ответы на вопросы, по работе с A-Number CRM.

Небольшое предисловие о логике работы на первоначальном этапе.

Когда Вы создали новую базу данных она пуста. То есть в ней изначально созданы всего лишь два поля, это № и Комментарий. Соответственно Вам надо создать все необходимые поля для работы.

Php?option=com_content&task=view&id=29#1

После того, как Вы создали поля базы данных, они не отображены в Главной таблице, почему? - потому что в Главной таблице отображаются только те поля которые Вы разместите на Карточке контакта. Поэтому Вы заходите в режим редактирования Карточки, и добавляете в нее, ранее созданные поля, и размещаете их на Карточке в том виде, который Вам больше нравится, то есть мы создали дизайн Карточки.

Php?option=com_content&task=view&id=59

Но следует помнить, что только что созданный Вами дизайн, Вы создали как пользователь Администратор, и только у этого пользователя он и будет отображаться. Часто после заведения новых пользователей в систему, возникает вопрос - почему при открытии Карточки у других пользователей, Карточка пуста? - потому что они не создали свой собственный дизайн Карточки. Но в том случае, если у Вас нет необходимости в создании индивидуального дизайна для каждого пользователя, Вы можете распространить на них любой дизайн, который был создан в данной базе данных, это легко, и занимает ровно минуту.

Php?option=com_content&task=view&id=33

И еще момент, который требует объяснения:
Когда Вы заводите в систему нового пользователя, он не входит ни в одну из групп доступа, то есть пока Вы не внесли его в одну из существующих групп, он будет видеть пустую Карточку и пустую Главную таблицу, не забывайте о том, что каждый пользователь, должен войти в одну из групп доступа.

Php?option=com_content&task=view&id=26

Я понял, что для того, чтобы поле отображалось в Главной таблице, его надо разместить на Карточке" - как это сделать? ?

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


При попытке воспользоваться импортом с сопоставлением полей, программа ругается " Выберите для переноса ветку без привязанных контактов. Импорт не произведен" Как с этим быть?

Надо перед импортом, создать пустую ветку в дереве (без привязанных к ней контактов), и выбрать ее в качестве целевой при импортировании.

Это сделано специально, для того, чтобы избежать (как показала практика) траты лишнего времени на поиск, только-что импортированных записей из тех, которые были внесены в базу до этого. А так они все аккуратно будут лежать в веточке, откуда Вы и сможете их распределить по требуемым веткам, без лишних хлопот.

Если в заголовке Карточки контакта не отображаются кнопки и ... это значит, что у Вас стоит тема AERO .

Конечно нет.

Если я в карточке случайно стерла что -то, можно ли как-то откатить это действие?

Нет, но можно заглянуть в Историю изменений.
Меню: Администрирование - Журнал изменений контактов
или:
Отчеты - Активность пользователей

Если зарегистрировать например 10 контактов, а потом удалить из них один или
несколько, то нумерация не восстанавливается. Т.е. было 10, осталось 5
после удаления, шестой зарегистрированный получит номер 11 и нумерация
будет 1,2,3,4,5,11. как-то можно решить эту проблему?

Номер является глобальным идентификатором записи, поэтому всегда уникален, это не подсчет количества строк.

Программа работает через интернет?

Если, к примеру, у меня несколько офисов в разных городах, будет ли программа работать как единая база данных?

Может ли каждый менеджер заходить в программу под своим логином?

Есть ли версия CRM для iPhone?

Нет, пока только под Windows.

Система работает в многопользовательком режиме по сети?

© 2024 dhmoscow.ru - Компьютер надо изучать