Chargement du schéma de base de données HCL Commerce

Vous devez utiliser un script pour charger le schéma de base de données HCL Commerce.

Avant de commencer

Préparez une base de données Db2 en vue d'une utilisation avec WebSphere Commerce.

Pourquoi et quand exécuter cette tâche

Le script suivant exécute les tâches suivantes :
  • Crée le schéma HCL Commerce incluant les tables, les vues et les procédures stockées dans la base de données.
  • Charge les données d'amorçage.
  • Crée deux utilisateurs par défaut dans la base de données.
    wcsadmin
    Administrateur de site.
    spiuser
    Utilisateur interne avec le rôle "RemoteConfigurationReaders". Cet utilisateur est uniquement utilisé pour l'appel d'API de serveur inter-composant. L'utilisateur spiuser est configuré dans Store server, Search server et Customization server, et est utilisé dans l'appel d'API depuis ces serveurs vers Transaction server. Cet utilisateur ne peut pas être désactivé. Si cet utilisateur est désactivé, les serveurs de composants nécessaires ne peuvent pas se connecter au Transaction server.

Procédure

  1. Connectez-vous au serveur dédié qui héberge le Utility server Docker container.
    Si un Utility server Docker container n'est pas déployé, voir Préparation d'un serveur hôte Docker pour lancer Utility server Docker container.
  2. Entrez le Utility server Docker container.
    Par exemple,
    docker exec -it utility_container_name bash
  3. Accédez au répertoire /opt/WebSphere/CommerceServer90/bin.
  4. Exécutez la commande suivante pour créer le schéma de base de données HCL Commerce.
    • Pour Linux :
      ./initdb_db2_sample.sh staging|production dbName dbServer dbPort dbaUser dbaPassword dbUser dbPassword merchantKey wcsadminSalt wcsadminPassword spiuserSalt spiuserPassword sampleData|noSample [sslKeyFile sslKeyPassword]
    • Pour Windows :
      ./initdb_db2_sample.bat type dbName dbServer dbPort dbaUser dbaPassword dbUser dbPassword merchantKey wcsadminSalt wcsadminPassword spiuserSalt spiuserPassword withSample sslKeyFile sslKeyPassword
    L'exemple, suivant affiche la commande servant à créer une base de données de transfert et à inclure des données exemple pour le modèle de magasin Aurora :
    ./initdb_db2_sample.sh staging mall mydb.hcl.com 50000 db2inst1 diet4coke wcs wcs1 1a1a1a1a1a1a1a1a2b2b2b2b2b2b2b2b 3h8x876vd8g3 wcs1admin 7j2lhm2vjpoc QxV7uCk6RRiwvPVaa4wdD78jaHi2za8ssjneNMdu3vgqi sampleData /opt/utilities/config/keystore.jks ibmkey
    type
    Type d'environnement. Les valeurs valides sont staging ou production.
    staging
    Indiquez cette valeur si vous souhaitez activer les espaces de travail. Le nombre d'espaces de travail par défaut est cinq. Le script crée cinq schémas de lecture et d'écriture dans la base de données.
    production
    Indiquez cette valeur si vous ne souhaitez pas activer les espaces de travail et chargez un schéma pour la production.
    dbName
    Nom de la base de données que vous avez créée.
    dbServer
    Nom d'hôte du serveur de la base de données.
    dbPort
    Port du serveur de la base de données.
    dbaUser
    Nom de l'administrateur de la base de données.
    mot_de_passe_dba
    Mot de passe de l'administrateur de la base de données.
    dbUser
    Nom de l'utilisateur de la base de données. Assurez-vous que vous n'utilisez pas le même nom d'utilisateur que l'administrateur de base de données.
    dbPassword
    Mot de passe de l'utilisateur de la base de données.
    merchantKey
    Clé de commerçant non chiffrée en texte brut.
    • Un caractère hexadécimal de 32 doit être utilisé. Les caractères peuvent être 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e ou f.
    • Il doit inclure au moins un caractère alphabétique.
    • Il doit inclure au moins un caractère numérique.
    • Il doit être en minuscules.
    • Il ne doit pas contenir plus de quatre caractères consécutifs.

      Par exemple, 1a1a1a1a1a1a1a1a2b2b2b2b2b2b2b2b.

    Important : Vous devez spécifier vos propres valeurs de clé de commerçant et de clé de chiffrement de clé pour la sécurité de votre installation HCL Commerce. N'utilisez pas les valeurs par défaut contenues dans les exemples de fichier de configuration et les exemples de documentation fournis.
    wcsadminSalt
    Spécifiez une chaîne aléatoire à utiliser pour chiffrer wcsadminPassword.
    wcsadminPassword
    Ce script crée un utilisateur Administrateur de site nommé wcsadmin. Indiquez un mot de passe pour wcsadmin. Utilisez le nom d'utilisateur wcsadmin et ce mot de passe pour vous connecter aux outils tels que HCL Commerce, Management Center et HCL Commerce Accelerator à la console d'administration.
    spiuserSalt
    Spécifiez une chaîne aléatoire à utiliser pour chiffrer spiuserPassword.
    spiuserPassword
    Ce script crée un utilisateur SPI nommé spiuser. Contactez votre administrateur qui a préparé les images Docker dans votre registre. Utilisez le même mot de passe spiuser en texte brut que votre administrateur a utilisé lors de la préparation des images Docker. Pour plus d'informations, voir Définition du mot de passe spiuser dans vos images Docker.
    Cet utilisateur est uniquement utilisé pour l'appel d'API de serveur inter-composant. Le spiuser est configuré dans le serveur de magasin, le serveur de recherche et le serveur de personnalisation, et est utilisé dans l'appel d'API depuis ces serveurs vers le serveur de transactions. Cet utilisateur ne peut pas être désactivé, sinon les serveurs de composants ne peuvent pas se connecter au serveur de transactions.
    withSample
    Déterminez si vous souhaitez charger des données exemple pour le modèle de magasin Aurora. Les valeurs valides sont sampleData ou noSample.
    sampleData
    Données exemple pour le modèle de magasin Aurora. Indiquez cette valeur si vous souhaitez afficher le modèle de magasin Aurora à des fins d'apprentissage ou pour utiliser le magasin en tant que point de validation. À la fin de la procédure de configuration, si vous pouvez afficher un magasin fonctionnel, l'environnement est correctement installé. Si vous spécifiez sampleData, des exemples de données et d'images de catalogue sont chargés dans votre base de données. Les modèles de magasin suivants sont chargés :
    • ExtendedSitesHub
    • ExtendedSitesCatalogAssetStore
    • AuroraStorefrontAssetStore
    • AuroraESite
    • AuroraB2BStorefrontAssetStore
    • AuroraB2BESite
    noSample
    Ne charger aucune donnée exemple. Indiquez cette valeur lorsque vous créez votre propre magasin.

    Pour apprendre à insérer vos propres données, voir Création et configuration de votre magasin personnalisé.

    sslKeyFile
    (Facultatif) Si le support SSL est configuré sur le serveur de la base de données, spécifiez le chemin d'accès au fichier de clés SSL. Vous pouvez contacter votre administrateur de base de données pour savoir si le support SSL est configuré.
    Par exemple, pour créer une base de données de transfert et inclure des données exemple pour le modèle de magasin Aurora :
    ./initdb_db2_sample.bat staging mall mydb.hcl.com 50000 db2inst1 db2instpassword wcs wcs1 1a1a1a1a1a1a1a1a2b2b2b2b2b2b2b2b wcsadminSalt1 wcsadminPwd1 spiuserSalt1 passw0rd sampleData opt/utilities/config/keystore.jks hclkey
    Avertissement : Ce script dure environ 30 minutes. Si le script échoue, vous devez restaurer votre base de données avant d'essayer de réexécuter la commande.

    Pour plus d'informations sur la restauration de votre base de données, voir RESTORE DATABASE COMMAND pour DB2 ou Base de données Oracle 12c édition 2 pour Oracle.

  5. Remplacez la clé de commerçant par défaut HCL Commerce et la clé de chiffrement de clé par vos propres valeurs.
    1. Exécutez wcs_encrypt.sh pour chiffrer la clé de commerçant en texte brut.
      ./wcs_encrypt.sh merchantKey KeyEncryptionKey
      clé_commerçant
      Clé de commerçant non chiffrée en texte brut que vous avez utilisée lorsque vous avez exécuté initdb_db2_sample.
      KeyEncryptionKey
      Spécifiez votre clé de 32 caractères hexadécimaux personnalisée en texte normal dans le fichier suivant : /opt/WebSphere/AppServer/profiles/default/installedApps/localhost/ts.ear/xml/config/KeyEncryptionKey.xml
      Par exemple,
      ./wcs_encrypt.sh 1a1a1a1a1a1a1a1a2b2b2b2b2b2b2b2b 3c3c3c3c3c3c3c3c4d4d4d4d4d4d4d4d
    2. Copiez la chaîne chiffrée ASCII et rendez-la accessible à votre déploiement. Cette clé est requise pour démarrer le Transaction server.
      • Pour un déploiement Kubernetes, stockez la valeur en fonction de la façon dont les valeurs d'environnement sont fournies au déploiement :
        • Stockez la valeur dans Vault, au niveau du chemin de la clé Tenant/EnvName/EnvType/merchantKeyEncrypted.

          Pour plus d'informations, voir Données d'environnement dans Vault.

        • Dans le fichier de configuration values.yaml de déploiement, stockez la valeur en supprimant la mise en commentaire de la ligne suivante.
          #merchantKey:ASCII_encrypted_string
      • Pour un déploiement basé sur Docker :
        • Ajoutez la variable d'environnement MERCHANTKEY_ENCRYPT dans votre fichier de configuration docker-compose, docker-compose.yml, dans la configuration de l'environnement Transaction server.
          Par exemple :
          txn:
          environment:
            - MERCHANTKEY_ENCRYPT=ASCII_encrypted_string
        • Si vous démarrez vos conteneurs Docker manuellement, vous pouvez également transmettre la chaîne via la ligne de commande.

          Par exemple :

           docker run -d -e LICENSE=accept -e MERCHANTKEY_ENCRYPT=ASCII_encrypted_string

Résultats

Le schéma HCL Commerce est chargé dans votre base de données.