Criando uma Tabela para Persistência de Sessão

É possível utilizar uma tabela de banco de dados para coletar e armazenar dados de sessão. Se você estiver utilizando uma tabela de banco de dados para persistência de sessão, deverá criar e definir uma tabela de banco de dados que esteja associada ao servidor de aplicativos.

Sobre Esta Tarefa

Sempre que o gerenciador de sessões é configurado para persistência de banco de dados, ele cria uma tabela para seu uso. Se deseja expandir o limite de tamanho da coluna para deixá-la mais apropriadas para seu Web site, é possível criar uma tabela externamente. Se a tabela externa for especificada como a tabela de destino na configuração de persistência do banco de dados do gerenciador de sessões, durante a inicialização do gerenciador de sessões, a tabela externa será utilizada. Na maioria dos casos, é melhor deixar que o gerenciador de sessões crie a tabela durante a inicialização.

Para criar uma tabela para coletar dados de sessão, faça o seguinte:

Procedimento

  1. Peça a seu administrador para criar uma tabela de banco de dados para armazenar seus dados de sessão utilizando uma das seguintes DDLs (Data Definition Languages): Para DB2:
    CREATE TABLE <SchemaName>.sessions  (
      ID               VARCHAR(128) NOT NULL ,
      PROPID           VARCHAR(128) NOT NULL ,
      APPNAME          VARCHAR(128) NOT NULL,
      LISTENERCNT      SMALLINT ,
      LASTACCESS       BIGINT,
      CREATIONTIME     BIGINT,
      MAXINACTIVETIME  INTEGER ,
      USERNAME         VARCHAR(256) ,
      SMALL            VARCHAR(3122)  FOR BIT DATA ,
      MEDIUM           LONG VARCHAR FOR BIT DATA ,
      LARGE            BLOB(2M)
        )
      
    Para Oracle:
    CREATE TABLE SESSIONS  (
      ID               VARCHAR(128) NOT NULL ,
      PROPID           VARCHAR(128) NOT NULL ,
      APPNAME          VARCHAR(128) NOT NULL,
      LISTENERCNT      SMALLINT ,
      LASTACCESS       INTEGER,
      CREATIONTIME     INTEGER,
      MAXINACTIVETIME  INTEGER ,
      USERNAME         VARCHAR(256) ,
      SMALL            RAW(2000),
      MEDIUM           LONG RAW ,
      LARGE            RAW(1)
      )
    Se a propriedade customizada UseOracleBLOB do contêiner da Web estiver definida para verdade, então:
    CREATE TABLE SESSIONS  (
      ID               VARCHAR(128) NOT NULL ,
      PROPID           VARCHAR(128) NOT NULL ,
      APPNAME          VARCHAR(128) NOT NULL,
      LISTENERCNT      SMALLINT ,
      LASTACCESS       INTEGER,
      CREATIONTIME     INTEGER,
      MAXINACTIVETIME  INTEGER ,
      USERNAME         VARCHAR(256) ,
      SMALL            RAW(2000),
      MEDIUM           BLOB,
      LARGE            RAW(1)
      )
    Atenção:
    1. No tempo de execução, o gerenciador de sessões acessa a tabela de destino utilizando a identidade do servidor Java™ Platform, Enterprise Edition (Java EE) na qual o respectivo aplicativo da Web está implementado. Qualquer contêiner da Web que esteja configurado para usar sessões persistentes deve ter acesso de leitura e atualização para a tabela de banco de dados do assunto.
    2. O processamento da sessão HTTP utiliza o índice definido utilizando a instrução CREATE INDEX para evitar congelamentos do banco de dados. Em algumas situações, por exemplo, quando um tamanho de tabela relativamente pequeno é definido para o banco de dados, o DB2 pode decidir não utilizar esse índice. Quando o índice não é utilizado, podem ocorrer conflitos de banco de dados. Se ocorrerem conflitos e banco de dados, consulte o Guia de Administração do DB2 para a versão do DB2 que você está utilizando para obter recomendações sobre como calcular o espaço necessário para um índice e ajustar apropriadamente o tamanho das tabelas que estão sendo utilizadas.
    3. Pode ser necessário ajustar o DB2 para fazer uso eficiente da tabela de banco de dados e para evitar conflitos ao acessá-la. Seu administrador do DB2 deve consultar o Guia de Administração do DB2 para obter informações específicas sobre o ajuste da versão do DB2 que você está utilizando.
    4. Durante o tempo de execução, o gerenciador de sessões pode criar uma entrada no banco de dados para cada módulo da Web do aplicativo. Essa linha de dados é usada internamente para propósitos de gerenciamento de sessões, como na invalidação de sessão. Não se preocupe com essa entrada. Ela pode ser ignorada.
    5. Se uma restrição de chave primária for requerida para a tabela de banco de dados das sessões, a restrição de chave primária deve ser definida usando as colunas ID, PROPID e APPNAME.
  2. [z/OS]Configure uma tabela para persistência de sessão.

Ícone que indica o tipo de tópico Tópico de Tarefa



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tprs_table_creation
Nome do arquivo: tprs_table_creation.html