Tuve el mismo problema que contaba Jerry en el siguiente enlace al conectar IRIS con el servidor SQL. Mi conexión ODBC está configurada para autenticarse mediante autenticación nativa de Windows.
¿Cómo lo solucioné yo?
La administración del sistema se refiere a la administración de uno o más sistemas de hardware y software.
Documentation en la administración del sistema de InterSystems.
Tuve el mismo problema que contaba Jerry en el siguiente enlace al conectar IRIS con el servidor SQL. Mi conexión ODBC está configurada para autenticarse mediante autenticación nativa de Windows.
¿Cómo lo solucioné yo?
gj :: configExplorer es una nueva extensión de VS Code que se integra con Server Manager y aprovecha Structurizr para generar diagramas de configuración de vuestros servidores.
Aquí tenéis un breve video introductorio.
Para habilitar la funcionalidad de interoperabilidad despues de crear un Namespace, use el método EnableNamespace de la clase %EnsembleMgr:
do ##class(%EnsembleMgr).EnableNamespace()
Recientemente ayudé a investigar un problema en una instalación que surgió después de que actualizaran su instancia de Caché en Windows de la versión 2015.1 a la 2017.1. Una sesión de terminal iniciada desde el icono del cubo del escritorio del servidor no podía ejecutar comandos a nivel del sistema operativo utilizando la función $ZF(-1). Por ejemplo, al tratar de lanzar el comando "REM" (que no tiene ningún efecto) de la siguiente manera
write $zf(-1,"rem")
devolvía -1, lo que indicaba que el comando de Windows no se podía ejecutar.
Es posible que hayáis notado que, para configurar un mirror en InterSystems IRIS for Health™ y HealthShare® Health Connect, hay un requisito especial. En este artículo, quiero guiaros paso a paso por el proceso.
Esto supone que ya habéis configurado el segundo miembro de conmutación por error y habéis confirmado un estado exitoso de dicho miembro en el monitor del mirror:
Paso 1: Activad el usuario HS_Services (en el servidor de respaldo y en el principal)..png)
Si eres administrador de sistemas y/o de base de datos y trabajas con InterSystems IRIS, este curso te puede ayudar a mantener tus instancias bien configuradas y con rendimiento óptimo.
Con el curso de Fundamentos de Administración aprenderás la información esencial y necesaria para configurar la plataforma de datos de InterSystems, realizar tareas de mantenimiento como copias de seguridad, monitorización, resolución de problemas y control de acceso de usuario.
En nuestro portal de formaciónpuedes consultar todos los cursos oficiales programados.
Es muy habitual en el día a día de los usuarios de IRIS o de Health Connect que sea necesario instalar nuevas instancias o bien actualizar las que ya tienen y en muchas ocasiones no son estos mismos usuarios los que realizan la instalación, si no personal de sistemas que en muchas ocasiones no tiene en consideración las particularidades de la asignación de permisos necesarios para la instalación.
En un entorno con contenedores, podéis gestionar la hora de vuestro contenedor mediante la variable TZ o a través de los directorios /etc/timezone y /etc/localtime.
environment:
- TZ=Europe/Parisvolumes:
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"Podéis encontrar ejemplos completos aquí:
En este tutorial, voy a explicar cómo podéis conectar la plataforma de datos IRIS a una base de datos SQL Server utilizando ODBC.
Prerequisitos:
Se puede obtener con una consulta de lista de la clase %SYS.Namespace.
1. Creáis una rutina como esta:
getnsp
set statement=##class(%SQL.Statement).%New()
set status=statement.%PrepareClassQuery("%SYS.Namespace","List")
set resultset=statement.%Execute()
while resultset.%Next() {
write resultset.%Get("Nsp"),!
}
quit2. Ejecutadla en vuestro terminal.
El método para ejecutar consultas de clase presentado en este artículo se puede aplicar en una variedad de casos.
Si el archivo de journal es demasiado grande para buscarlo o filtrarlo mediante el Portal de administración, podemos consultarlo mediante los dos métodos siguientes.
① Usando la utilidad ^JRNDUMP
② Usandolo en código
================================================== ==========
① Usando la utilidad ^JRNDUMP. Por ejemplo, si deseamos seleccionar todos los registros del archivo de journal que incluyen la referencia global ^ABC, hagamos lo siguiente:
*Ejecuta todos los comandos a continuación en el espacio de nombres %SYS.
El número máximo de namespaces que se pueden crear en una instancia es de 2047. Sin embargo, para utilizar un gran número de namespaces, necesitaréis configurar la memoria adecuadamente.
El número máximo de bases de datos (incluidas las bases de datos remotas) que se pueden crear en una instancia es de 15,998. Dependiendo del tipo de licencia, puede haber restricciones sobre la cantidad que se puede crear. Para más detalles, consultad el siguiente documento.
Configuración de la Base de Datos [IRIS]
Configuración de la Base de Datos
Podéis comprobar el espacio libre en disco en cualquier momento usando la clase de utilidad del sistema: SYS.Database y la consulta: FreeSpace.
Aquí tenéis cómo probarlo en el terminal de IRIS (id al espacio de nombres %SYS y luego ejecutadlo):
zn"%SYS"set stmt=##class(%SQL.Statement).%New()
set st=stmt.%PrepareClassQuery("SYS.Database","FreeSpace")
set rset=stmt.%Execute()
do rset.%Display()El resultado de salida es el siguiente:
Los globales temporales almacenados en las bases de datos IRISTEMP/CACHETEMP se utilizan cuando un proceso no necesita almacenar datos de manera indefinida, pero requiere el potente rendimiento de los globales. Las bases de datos IRISTEMP/CACHETEMP no se registran en el diario, por lo que el uso de globales temporales no genera archivos de diario.
El sistema utiliza las bases de datos IRISTEMP/CACHETEMP para almacenamiento temporal y están disponibles para vosotros para el mismo fin.
Me encontré en la incómoda situación de trabajar con un sistema Linux en el que alguien había deshabilitado accidentalmente el acceso de los usuarios al shell de Linux. HealthConnect estaba en funcionamiento, atendiendo a cientos de interfaces. Sin embargo, para resolver el problema de acceso, necesitábamos apagar el host para aplicar una solución.
Sin el shell, el comando iris no está disponible para controlar la instancia, por lo que nos enfrentábamos a la posibilidad de apagar el servidor de manera abrupta. Queríamos evitar eso si era posible...
Por razones prácticas, muchas veces necesitamos que tras un reinicio de un servidor Linux, la instancia IRIS que tengamos instalada se inicie automáticamente.
A continuación encontraréis los pasos a seguir para automatizar el arranque de IRIS durante un reinicio de Linux, a través de systemd :
1. Cread un archivo iris.service en /etc/systemd/system/iris.service que contenga la siguiente información
IS Comunidad de Desarrolladores, I 👑 you.
Si necesita migrar su servidor por algún motivo, se puede reducir el trabajo de configuración del nuevo entorno. Bastará copiar la información de configuración del entorno previo al nuevo entorno.
Se puede migrar la siguiente información de configuración.
Para resolver el error <PROTECT>, hay que eliminar el atributo de solo lectura de la base de datos de la biblioteca de todo el sistema (IRISLIB para InterSystems IRIS, CACHELIB para Caché/Ensemble/HealthShare (basado en Caché))
Una vez se haya terminado de importar la rutina, hay que acordarse de volver a cambiarla a solo lectura.
[Versión 2013.1 y superior]
[Portal de Gestión] > [Administración] > [Configuración] > [Configuración de Sistema] > [Bases de Datos Local] Desmarcad "Mount Read-Only" (Montar solo lectura) en el enlace del nombre de la base de datos.
Si el sistema no se para durante 24 horas, los archivos journal serán eliminados a las 0:30 según la "Configuración de la eliminación de archivos journal".
Una posible causa de que los archivos journal permanezcan más tiempo del establecido en la "Configuración de la eliminación de archivos journal" es que hay transacciones que permanecen abiertas.
En ese caso, se podrá eliminar el archivo journal buscando procesos que estén ejecutando transacciones y finalizando las transacciones.
Al instalar IRIS, todos los eventos de auditoría del sistema no están habilitados.
¿Cuál es la forma más rápida de activar todos los eventos?
Estamos encantados de anunciar una nueva sección en la documentación de InterSystems, que hace más fácil actualizar InterSystems IRIS®, InterSystems IRIS® for Health™ y HealthShare® Health Connect. La Lista de Comprobación de Actualizaciones (en https://docs.intersystems.com/upgrade) muestra todo lo que hay que tener en cuenta - y solo lo que hay que tener en cuenta – en una actualización entre dos versiones cualquiera. La lista recopila todo el contenido de nuestro "Historial de Incompatibilidades" y añade unos filtros muy útiles, categorías de nivel superior y la posibilidad de exportar la
Puedes establecer el tamaño máximo de la base de datos IRISTemp en el arranque de IRIS configurando el parámetro MaxIRISTempSizeAtStart.
Después de configurarlo, el sistema truncará IRISTemp al valor establecido (MB) en el siguiente inicio de IRIS. Si el tamaño actual es inferior al especificado MaxIRISTempSizeAtStart, no realizará el truncado. Si se especifica el valor 0 no se realizará el truncado nunca.
Puedes configurarlo en el siguiente menú.
Para ejecutar un backup online desde un comando, se puede utilizar la rutina API BACKUP^DBACK.
Este es un ejemplo de realización de un backup completo.
set status = $$ BACKUP ^DBACK( "" , "F" , "full backup" , "c:\backup\full.cbk" , "Y" , "c:\backup\full-log.log" , " NOINPUT" , "Y" , "Y" , "" , "" )El valor de retorno es 1 si el backup se realiza con éxito, y 0 si el backup no se realiza correctamente. Por favor, consultad el fichero log para conocer más detalles sobre el fallo.
Podéis ver el espacio libre disponible para la base de datos usando la opción "Free space view" (Ver espacio libre) en el Management Portal: System Operation > Databases.
Y se puede obtener mediante programación a través la consulta FreeSpace de la clase del sistema SYS.Database.
Se puede obtener mediante la consulta AllFields de la clase %SYS.ProcessQuery.
Para más detalles, consultad el documento Process (Job)【IRIS】/Process (Job).
Un ejemplo de ejecución en el terminal es el siguiente:
※ Utilizad este método si queréis comparar bases de datos que se han replicado mediante mirror, shadow o algún otro mecanismo.
Podéis utilizar la utilidad DATACHECK para comparar globals. (Consultad la documentación para más información: Descripción general de DataCheck [IRIS])
***
Las comparaciones de rutinas usan la rutina del sistema %RCMP o el Portal de Administración.
Puedes buscar variables globales específicas en el archivo de journals usando la consulta ByTimeReverseOrder de la clase %SYS.Journal.File y la consulta List de la clase %SYS.Journal.Record
El funcionamiento de cada consulta es el siguiente:
Continuando con la serie de análisis de rendimiento, en este artículo voy a mostrar un método para dimensionar los requisitos de memoria compartida para aplicaciones de base de datos que se ejecutan en plataformas de datos de InterSystems, incluyendo los Global y Routine Buffers, gmheap y locksize. También daré algunos consejos de rendimiento que se deberían tener en cuenta al configurar servidores y al virtualizar aplicaciones de Iris. Como siempre, cuando hablo de Iris o Caché , me refiero a toda la plataforma de datos. Este artículo tiene algunos años pero mantiene su esencia, por lo que me
Entre las diversas soluciones que desarrollamos en Innovatium, un desafío habitual es la necesidad de acceder al tamaño de las bases de datos. Entonces me di cuenta de que eso no es algo tan trivial en IRIS. Ese tipo de información es importante para mantener un control del flujo de datos y del coste en gigabytes de un sistema para implementar. Sin embargo, lo que realmente me llamó la atención fue la necesidad de eso para algo muy importante: la migración a la nube. Al final, ¿quién no quiere migrar sus sistemas a la nube hoy en día?