2016-08-14 2 views
-1

나는 mysql 데이터베이스가있는 실행중인 wamp 서버가있는 PC A를 사용합니다.Java - 다른 PC의 데이터베이스에 연결

및 PC B는 해당 데이터베이스에 연결하기 위해 JDBC jpa, JDBC를 사용하여 직접 액세스를 시도합니다.

나는 지금까지 무엇을 했습니까?

PC A는 로컬이므로 데이터베이스에 연결됩니다.

PC B는 예외가 너무 발생했다 "액세스 거부"연결 할 권한이 없었다 내가 한 다음

GRANT MYDB으로 '루트'@ 'MyIP에' '루트'로 식별 ON ALL PRIVILEGES;

그러나 두 번째 시도에서 사용자 '@'myip '에 권한이 없다는 예외가 발생했습니다.

어쨌든 나는 그 IP에 대한 모든 권한을 부여하고 비우기 만했다.

하지만 여전히 예외 "를 선택 명령을 거부"슬로우됩니다 ,,

이 내 database.properties 있습니다 (데이타베이스를 볼 수 없습니다 확신) :

javax.persistence.jdbc.url=jdbc:mysql://myIp:3306/myDB?useUnicode=yes&characterEncoding=UTF-8&characterSetResults=UTF-8 
javax.persistence.jdbc.user=root 
javax.persistence.jdbc.password=root 
hibernate.dialect=org.hibernate.dialect.MySQLDialect 

스프링 설정 :

@Configuration 
@EnableJpaRepositories("chechecn.elections.organizer.repository") 
@EnableTransactionManagement 
public class SpringConfig { 

    @Bean 
    public DataSource dataSource() { 

     EmbeddedDatabaseBuilder builder = new EmbeddedDatabaseBuilder(); 
     return builder.setType(EmbeddedDatabaseType.HSQL).build(); 
    } 

    @Bean(name = "entityManagerFactory") 
    public EntityManagerFactory entityManagerFactory() { 

     HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter(); 
     vendorAdapter.setGenerateDdl(true); 

     LocalContainerEntityManagerFactoryBean factory = new LocalContainerEntityManagerFactoryBean(); 
     factory.setJpaVendorAdapter(vendorAdapter); 
     factory.setPackagesToScan("chechecn.elections.organizer"); 

     factory.setJpaProperties(additionalJpaProperties()); 

     // factory.setDataSource(dataSource()); 

     factory.afterPropertiesSet(); 

     return factory.getObject(); 
    } 

    private Properties additionalJpaProperties() { 
     Properties properties =  PropertiesReader.instance.getPropValues(PropertiesConstants.DATABASE_PROPERTIES); 

     return properties; 
    } 

    @Bean 
    public PlatformTransactionManager transactionManager() { 

     JpaTransactionManager txManager = new JpaTransactionManager(); 
     txManager.setEntityManagerFactory(entityManagerFactory()); 
     return txManager; 
    } 


    @Bean 
    public ServiceConnector serviceConnector() { 
     return new ServiceConnector(); 
    } 
} 
+1

네트워킹을 지원하도록 mysql을 설정 했습니까? –

+0

정말 모르겠다. 제발 도와 줄 수 있니? 힌트 요? –

+0

@PauChorro 어쨌든 그 빈을 사용하지 않습니다. –

답변

-1

다른 컴퓨터에서 해당 주소로 루트 액세스 권한을 갖고 계십니까?

관련 문제