Utilisation de Microsoft SQL Server pour la base de données Impression à la demande

Les tables de base de données Impression à la demande dans Microsoft SQL Server sont créées automatiquement pendant l'installation. Lors de l'installation, spécifiez les informations du serveur de base de données Microsoft SQL Server sur l'écran de la base de données. Ce processus remplit automatiquement les informations correctes dans le fichier database.properties. Le répertoire du fichier database.properties contient une copie de sauvegarde du fichier database_mssql.properties. Le fichier database_mssql.properties contient des noms de variables pouvant faire office de modèles lors du formatage du fichier database.properties pour Microsoft SQL Server. Si vous modifiez le fichier database_mssql.properties pour l'utiliser, renommez-le database.properties.

Remarques :

Si vous passez de Firebird à Microsoft SQL Server après l'installation, créez manuellement la base de données Impression à la demande dans Microsoft SQL Server. Supprimez tous les fichiers de sauvegarde, puis exécutez le programme d'installation de LPM. Spécifiez les informations de la base de données Microsoft SQL Server sur l'écran de la base de données.

Remarque : Les données LPM ne sont pas transférées vers la nouvelle base de données Microsoft SQL Server.

Versions Microsoft SQL Server prises en charge

Avant d'installer Microsoft SQL Server 2014 ou 2012, ajoutez les éléments suivants depuis Server Manager :

Création de la base de données Impression à la demande pour Microsoft SQL Server

Remarque : Le programme d'installation de LPM version 2.4 ou ultérieure crée automatiquement les tables Impression à la demande pendant l'installation.
  1. Dans Management Studio, connectez-vous au serveur de base de données en tant que propriétaire de cette dernière.

  2. Cliquez avec le bouton droit de la souris sur le nœud de la base de données, puis cliquez sur Nouvelle base de données.

  3. Attribuez un nom descriptif à la base de données.

  4. Cliquez sur OK.

Ajout de la norme Unicode aux tables Impression à la demande

  1. Sur votre ordinateur, mettez à jour les tables Impression à la demande. Par exemple, %ProgramFiles%\Lexmark\Solutions\lpm\ms-sql-script\migrate-ascii-column-data-to-unicode.sql.

    Remarques :

    • Des erreurs liées à la table MP_PRINTERS peuvent survenir si celle-ci n'existe pas. Si vous n'utilisez pas Email Watcher avec les surnoms de l'imprimante, mettez en commentaire les lignes appropriées dans le script.
    • Si vous utilisez Impression à la demande version 2.3.15 ou ultérieure, des erreurs liées à la table dbo.SCHEMA_ELEMENTS peuvent survenir lors de l'exécution du script sur Impression à la demande version 2.3.14. Si vous utilisez Impression à la demande version 2.3.14, mettez en commentaire les lignes appropriées dans le script.
  2. Dans Management Studio, connectez-vous au serveur de base de données en tant que propriétaire de cette dernière.

  3. Cliquez avec le bouton droit de la souris sur la base de données Impression à la demande, puis cliquez sur Nouvelle demande.

  4. Dans la fenêtre Nouvelle demande, collez le contenu du fichier migrate-ascii-column-data-to-unicode.sql.

  5. Assurez-vous que la base de données Impression à la demande est sélectionnée, puis cliquez sur Exécuter.

Le type de données varchar est désormais remplacé par nvarchar dans toutes les tables Impression à la demande, comme PR_JOBS.

Mise à jour du fichier database.properties pour les instances par défaut de Microsoft SQL Server

Pendant l'installation, la version 2.4 ou ultérieure de LPM crée des chaînes de connexion dans les fichiers de propriétés. Créez manuellement la base de données Impression à la demande dans Microsoft SQL Server, puis exécutez le programme d'installation autonome de LPM. Ce processus remplit les informations correctes dans le fichier database.properties, puis crée automatiquement les tables Impression à la demande dans Microsoft SQL Server.

  1. Définissez le serveur d'application hors ligne dans Lexmark Management Console.

  2. Depuis le serveur d'application, accédez au dossier <install_path>\apps\printrelease\WEB-INF\classes, où <install_path> correspond au chemin d'installation de LPM.

  3. Remplacez le nom database.properties par database_backup.properties.

  4. A l'aide d'un éditeur de texte, ouvrez le fichier database_mssql.properties.

  5. Procédez comme suit :

    1. Recherchez ${SQLSERVER}, puis remplacez toutes les instances par l'adresse réseau de Microsoft SQL Server.

    2. Recherchez ${SQLDB}, puis remplacez toutes les instances par le nom de la base de données Microsoft SQL Server qui contient les tables de la base de données Impression à la demande.

    3. Recherchez ${SQLUSER}, puis remplacez toutes les instances par l'utilisateur nommé de Microsoft SQL Server disposant d'un accès en lecture-écriture-suppression aux tables de la base de données Impression à la demande.

    4. Recherchez ${SQLPW}, puis remplacez toutes les instances par le mot de passe de l'utilisateur nommé de Microsoft SQL Server.

  6. Nommez le fichier database.properties.

  7. Enregistrez le fichier.

  8. Redémarrez le service Lexmark Solutions Application Server.

  9. Une fois le processus Lexmark Solutions Application Server (tomcat7.exe) entièrement initialisé, mettez le serveur en ligne.

  10. Répétez ce processus pour l'ensemble des serveurs d'application.

Remarque : Si seuls des sous-ensembles des tables Impression à la demande sont stockés dans Microsoft SQL Server, copiez les sections du fichier database_mssql.properties vers le fichier database.properties. Par exemple, si dans Microsoft SQL Server, seules les données de statistiques Impression à la demande sont nécessaires, copiez la section database.STATS depuis le fichier database_mssql.properties. Dans le fichier database.properties, remplacez les mêmes informations.

Mise à jour des sources de données pour plusieurs bases de données

Les modifications apportées au fichier database.properties nécessitent des mises à jour dans le serveur d'application du portail LPM. Le portail LPM est configuré par défaut avec des sources de données appelées sources de données par défaut et secondaire. Les informations de la base de données contenues dans la source de données varient selon la configuration de LPM. Par exemple, en cas d'installation dans une configuration non hybride, LPM pointe les sources de données par défaut et secondaire vers la même base de données. Dans une configuration hybride, la source de données par défaut pointe vers la base de données LPM Microsoft SQL Server, et la source secondaire vers la base de données LDD Firebird.

  1. Définissez le serveur d'application hors ligne dans Lexmark Management Console.

  2. Depuis le serveur d'application, accédez au dossier <install_path>\apps\lpm\WEB-INF\classes, où <install_path> correspond au chemin d'installation de LPM.

  3. A l'aide d'un éditeur de texte, ouvrez le fichier database-production-config.properties.

  4. Mettez à jour les informations de la base de données pointées par la source de données par défaut ou secondaire.

    Exemple de code

    dataSource.url = jdbc:sqlserver://<ip address>;databasename=LPMPremise;?lc_ctype=UTF-8
    dataSource.driverClassName = com.microsoft.sqlserver.jdbc.SQLServerDriver
    dataSource.dialect = org.hibernate.dialect.SQLServer2008Dialect
    dataSource.username = lpmadmin
    dataSource.password = tiger123
    dataSource.properties.validationQuery = select 1
    dataSource.pooled = true
    dataSource.properties.maxActive = 15
    dataSource.properties.maxIdle = 1
    dataSource.properties.minIdle = 1
    dataSource.properties.minEvictableIdleTimeMillis=5000
    dataSource.properties.timeBetweenEvictionRunsMillis=60000
    dataSource.properties.testOnBorrow=true
    dataSource.properties.testWhileIdle=true
    dataSource.properties.testOnReturn=true
    dataSource.removeAbandoned=true
    dataSource.removeAbandonedTimeout=180000
    
    dataSource_secondary.url = jdbc:firebirdsql://<ip address>/3050:SOLUTIONINFO?lc_ctype=UTF-8
    dataSource_secondary.driverClassName = org.firebirdsql.jdbc.FBDriver
    dataSource_secondary.dialect = org.hibernate.dialect.FirebirdDialect
    dataSource_secondary.username = framework
    dataSource_secondary.password = ENC (mna6C4NkloGNVSx4ry08RA==)
    dataSource_secondary.properties.validationQuery = select 1 from RDB$DATABASE
    dataSource_secondary.pooled = true
    dataSource_secondary.properties.maxActive = 15
    dataSource_secondary.properties.maxIdle = 1
    dataSource_secondary.properties.minIdle = 1
    dataSource_secondary.properties.minEvictableIdleTimeMillis=5000
    dataSource_secondary.properties.timeBetweenEvictionRunsMillis=60000
    dataSource_secondary.properties.testOnBorrow=true
    dataSource_secondary.properties.testWhileIdle=true
    dataSource_secondary.properties.testOnReturn=true
    dataSource_secondary.removeAbandoned=true
    dataSource_secondary.removeAbandonedTimeout=180000
  5. Pour ajouter une autre source de données, procédez comme suit :

    1. Copiez la source de données secondaire.

    2. Remplacez secondary (secondaire) par tertiary (tertiaire) ou tout autre suffixe approprié et unique.

    3. Mettez à jour les informations de la base de données relatives à la source de données ajoutée.

    4. Ajoutez le codec de cryptage du mot de passe pour la source de données ajoutée.

      Exemple de code

      dataSource_tertiary.url = jdbc:firebirdsql://<ip address>/3050:SOLUTIONINFO?lc_ctype=UTF-8
      dataSource_tertiary.driverClassName = org.firebirdsql.jdbc.FBDriver
      dataSource_tertiary.dialect = org.hibernate.dialect.FirebirdDialect
      dataSource_tertiary.username = framework
      dataSource_tertiary.password = ENC (mna6C4NkloGNVSx4ry08RA==)
      dataSource_tertiary.properties.validationQuery = select 1 from RDB$DATABASE
      dataSource_tertiary.pooled = true
      dataSource_tertiary.properties.maxActive = 15
      dataSource_tertiary.properties.maxIdle = 1
      dataSource_tertiary.properties.minIdle = 1
      dataSource_tertiary.properties.minEvictableIdleTimeMillis=5000
      dataSource_tertiary.properties.timeBetweenEvictionRunsMillis=60000
      dataSource_tertiary.properties.testOnBorrow=true
      dataSource_tertiary.properties.testWhileIdle=true
      dataSource_tertiary.properties.testOnReturn=true
      dataSource_tertiary.removeAbandoned=true
      dataSource_tertiary.removeAbandonedTimeout=180000
      dataSource_tertiary.passwordEncryptionCodec=com.lexmark.utils.PBEWithMD5AndDESCodec
  6. Si une nouvelle source de données est ajoutée, accédez depuis le serveur d'application au dossier <install_path>\apps\lpm\WEB-INF\classes, où <install_path> correspond au chemin d'installation de LPM.

  7. A l'aide d'un éditeur de texte, ouvrez le fichier app-production-config.properties.

  8. Mettez à jour les informations de la base de données devant pointer vers la source de données tertiaire.

    Exemple de code

    datasource.webapp = secondary
    datasource.badge = DEFAULT
    datasource.pin = tertiary
    datasource.stats = DEFAULT
    datasource.printernicknames = secondary
    datasource.printtrackdevices = DEFAULT
  9. Assurez-vous que les mises à jour sur le portail LPM sont identiques aux valeurs du fichier database.properties.

  10. Enregistrez le fichier.

  11. Redémarrez le service Lexmark Solutions Application Server.

Utilisation des instances nommées de Microsoft SQL Server

Si vous utilisez une instance nommée de Microsoft SQL Server pour la base de données Impression à la demande, ajoutez le paramètre instanceName aux propriétés suivantes :

Par exemple, la section STATS doit être mise à jour comme suit :

database.STATS.connect=jdbc:sqlserver://network.address.of.mssqlserver;databaseName=CustomerPrDatabaseName;instanceName=nameOfCustomerMSSQLInstance;

database.STATS.dataSource=network.address.of.mssqlserver;databaseName= CustomerPrDatabaseName;instanceName= nameOfCustomerMSSQLInstance;