Todos os produtos
Search
Central de documentação

Tair (Redis® OSS-Compatible):Etapa 3: Conectar-se a uma instância

Última atualização: Oct 10, 2026

Conecte-se a uma instância Tair (Redis OSS-compatible) usando o redis-cli, código ou o Data Management (DMS).

Pré-requisitos

Procedimento

redis-cli

Este exemplo usa o redis-cli em uma instância Linux do Elastic Compute Service (ECS) para se conectar a uma instância cloud Tair (Redis OSS-compatible) na mesma VPC.

Nota

Para conectar-se pela Internet, apply for a public endpoint.

  1. Faça login na instância ECS e execute os seguintes comandos para que você baixe, compile e instale o redis-cli:

    sudo yum -y install gcc            # Install GNU Compiler Collection (GCC).
    wget https://download.redis.io/releases/redis-7.2.0.tar.gz
    tar xzf redis-7.2.0.tar.gz
    cd redis-7.2.0&&make

    Este exemplo usa o redis-cli 7.2.0, mas instale uma versão diferente se desejar. A compilação leva de 2 a 3 minutos.

  2. Execute o seguinte comando para se conectar à instância:

    src/redis-cli -h hostname -a password -p port

    Parâmetros (especifique os seguintes valores):

    • hostname: o endpoint da instância. Na seção Connection Information da página de detalhes da instância, encontre o endpoint da VPC, por exemplo, r-8vbwds91ie1rdl****.redis.zhangbei.rds.aliyuncs.com. Para mais informações, consulte View endpoints.

    • password: a senha da instância.

    • port: o número da porta. Padrão: 6379.

    Exemplo de comando:

    src/redis-cli -h r-8vbwds91ie1rdl****.redis.zhangbei.rds.aliyuncs.com -a TestPassword123 -p 6379
  3. Grave e leia dados.

    1. Execute o comando SET bar foo.

      Saída esperada:OK.

    2. Execute o comando GET bar.

      Saída esperada:"foo".

Código

Nota

Para conectar-se pela Internet, apply for a public endpoint.

Este exemplo usa o cliente Jedis . Para outros tipos de cliente, consulte Connection code examples with common types of clients.

  1. Adicione as dependências necessárias ao pom.xml.

    <!-- Import spring-data-redis -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-redis</artifactId>
        <!-- Since Spring Boot 2.0, Lettuce is the default client. Exclude lettuce when using Jedis. -->
        <exclusions>
            <exclusion>
                <groupId>io.lettuce</groupId>
                <artifactId>lettuce-core</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <!-- Import jedis -->
    <dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
    </dependency>
  2. Modifique os parâmetros de conexão com base nos comentários.

    @Configuration
    public class RedisConfig {
        
        @Bean
        JedisConnectionFactory redisConnectionFactory() {
            // This example is used only to test connectivity. In production environments, we recommend that you place connection information in a configuration file and retrieve it using the @Value annotation.
            // The endpoint (hostName) and port (port) can be obtained from the Connection Information section of the instance details page. Select a VPC endpoint or public endpoint based on your client network environment.
            RedisStandaloneConfiguration config = new RedisStandaloneConfiguration("r-8vbwds91ie1rdl****.redis.zhangbei.rds.aliyuncs.com", 6379);
            // Specify the password in the username:password format. For example, if the username is testaccount and the password is Rp829dlwa, enter testaccount:Rp829dlwa as the password.
            // If you forget your username or password, you can reset the password or create a new account by clicking Account Management in the left-side navigation pane of the instance details page.
            config.setPassword(RedisPassword.of("Username:Password"));
            JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
            // Specify the maximum number of connections based on your business requirements. This value cannot exceed the maximum number of connections supported by the instance.
            jedisPoolConfig.setMaxTotal(30);
            // Specify the maximum number of idle connections based on your business requirements. This value cannot exceed the maximum number of connections supported by the instance.
            jedisPoolConfig.setMaxIdle(20);
            // Disable testOn[Borrow|Return] to prevent additional PING commands from being generated.
            jedisPoolConfig.setTestOnBorrow(false);
            jedisPoolConfig.setTestOnReturn(false);
    
            JedisClientConfiguration jedisClientConfiguration = JedisClientConfiguration.builder().usePooling().poolConfig(
                    jedisPoolConfig).build();
    
            return new JedisConnectionFactory(config, jedisClientConfiguration);
        }
        @Bean
        public RedisTemplate<String, Object> redisTemplate() {
            RedisTemplate<String, Object> template = new RedisTemplate<>();
            template.setConnectionFactory(redisConnectionFactory());
            template.setKeySerializer(new StringRedisSerializer());
            template.setValueSerializer(new GenericJackson2JsonRedisSerializer());
            return template;
        }
    }
  3. Teste a conectividade.

    @SpringBootTest
    public class RedisTest {
        @Autowired
        private RedisTemplate<String, Object> redisTemplate;
    
        @Test
        void test() {
            try {
                redisTemplate.opsForValue().set("test_key", "hello world!");
                System.out.println("Connection successful:"+redisTemplate.opsForValue().get("test_key"));
            } catch (Exception e) {
                e.printStackTrace();
                System.out.println("An exception occurred during the connection attempt. Refer to the documentation " +
                        "https://www.alibabacloud.com/help/en/redis/support/how-do-i-troubleshoot-connection-issues-in-apsaradb-for-redis?spm=a2c63.p38356.help-menu-26340.d_5_1_1_4.47ca2024nvxRlS" +
                        "to troubleshoot network, whitelist, and account/password issues." +
                        "You can also refer to the documentation based on the error message: https://www.alibabacloud.com/help/en/redis/support/common-errors-and-troubleshooting?spm=a2c63.p38356.help-menu-26340.d_5_0.77cc79fejApYJN");
            }
    
        }
    }

    Se a conexão for bem-sucedida, a saída será:

    Connection successful: hello world!

DMS

  1. Faça login no console e acesse a página Instances. Na barra de navegação superior, selecione a região em que você gerencie a instância. Em seguida, encontre a instância e clique no ID da instância.

  2. No canto superior direito da página de detalhes da instância, clique em Log into Database.

  3. Na caixa de diálogo Log on to Database Instance, defina o Access mode como password login e insira uma senha.

    Este modo usa a conta padrão. Para esta conta, visualize os detalhes da conta na página Account Management no console.

  4. Clique em Login.

  5. Grave e leia dados.

    1. Na página SQLConsole, insira o comando SET foo hello e clique em Execute(F8).

      Saída esperada:OK.

    2. Insira o comando GET foo e clique em Execute(F8).

      Saída esperada:hello.

Referências

Para mais informações, consulte os seguintes tópicos:

Métodos de conexão especiais

  • Enable TLS (SSL) encrypted connections to an instance: A criptografia TLS melhora a segurança do link de transporte e garante a integridade dos dados.

  • Use direct connection mode to connect to a cluster instance: Se a sua instância for uma instância de cluster no modo de conexão direta, use o endpoint privado para ignorar os nós de proxy e acessar diretamente os shards de dados do backend. Essa conexão com instâncias de cluster é semelhante à conexão com clusters Redis open source. Em comparação com o modo de proxy, o modo de conexão direta reduz o tempo de resposta, pois as solicitações não precisam passar pelos nós de proxy.

  • Connect using the Sentinel-compatible mode: O Tair (Redis OSS-compatible) oferece o modo compatível com Sentinel. É recomendado que você ative esse modo, e assim você pode conectar as instâncias a partir do cliente da mesma forma que o Redis Sentinel nativo.

Erros comuns e solução de problemas

Mensagem de erro

Causa e solução

(error) ERR illegal address

A lista de permissões está configurada incorretamente.

  1. Verifique se o endereço IP do seu cliente foi adicionado a uma lista de permissões da instância. Para mais informações, consulte Step 2: Configure whitelists.

  2. Verifique o endpoint da instância. Use o endpoint público para conexões com a Internet.

  3. Verifique se a sua instância ECS está na mesma VPC que a instância Tair (Redis OSS-compatible). Caso contrário, conecte-se pela Internet.

Execute ping <Instance endpoint> e verifique a conectividade. Exemplo: ping r-bp1zxszhcgatnx****.redis.rds.aliyuncs.com.

(error) ERR client ip is not in whitelist

Could not connect to Redis

  • (error) ERR invalid password

  • (error) WRONGPASS invalid username-password pair

Senha inválida. O formato necessário varia de acordo com o tipo de conta.

  • Se usar a conta padrão, insira a senha. Por exemplo, se o nome de usuário da conta padrão for r-bp1zxszhcgatnx**** e a senha for Password21, o comando para verificar a senha é AUTH Password21.

  • Se usar uma conta personalizada, insira a senha no formato user:password. Por exemplo, se o nome de usuário da conta personalizada for testaccount e a senha for Rp829dlwa, o comando para verificar a senha é AUTH testaccount:Rp829dlwa.

Nota
  • Ao usar uma ferramenta de terceiros, como o RDM, insira a senha no formato user:password e deixe o campo username vazio. Caso contrário, a conexão à instância falhará.

  • Se esquecer a senha, redefina-a. Para mais informações, consulte Change or reset the password.