>  기사  >  데이터 베이스  >  mysql 임베디드 란 무엇입니까?

mysql 임베디드 란 무엇입니까?

藏色散人
藏色散人원래의
2023-04-05 11:10:532372검색

mysql 임베디드는 통합 테스트에서 실제 MySql을 실행할 수 있는 방법을 제공하는 라이브러리로, 사용자는 MySQL을 설치하지 않고도 jar 패키지를 통합하여 임베디드 MySQL을 구현할 수 있고, 데이터베이스를 추가, 삭제, 수정할 수 있습니다. 관련 작업을 확인하세요.

mysql 임베디드 란 무엇입니까?

이 튜토리얼의 운영 환경: Windows 10 시스템, mysql8 버전, Dell G3 컴퓨터.

EmbeddedMySql 사용

Embedded MySql이란 무엇인가요?

Embedded MySql 라이브러리는 통합 테스트에서 실제 MySql을 실행하는 방법을 제공합니다. 이 jar 패키지를 통합하면 임베디드 MySQL을 구현할 수 있습니다. 데이터베이스 추가, 삭제, 수정 및 기타 관련 작업을 수행하기 위해 Mysql을 설치할 필요가 없습니다.

임베디드 MySql의 사용

먼저 maven 의존성을 소개합니다

 <dependency>
      <groupId>com.wix</groupId>
      <artifactId>wix-embedded-mysql</artifactId>
      <version>4.6.1</version>
      <scope>test</scope>
 </dependency>

다음 단계는 Java 코드의 사용입니다. 내장된 데이터베이스의 시작과 관련된 매개변수를 구성합니다.

import com.wix.mysql.config.MysqldConfig;import com.wix.mysql.EmbeddedMysql;import static com.wix.mysql.ScriptResolver;import java.util.concurrent.TimeUnit;import static com.wix.mysql.config.MysqldConfig.aMysqldConfig;import static com.wix.mysql.EmbeddedMysql.anEmbeddedMysql;import static com.wix.mysql.distribution.Version.v5_6_23;import static com.wix.mysql.config.Charset.UTF8;public class EmbeddedMysqlConfig {

	private EmbeddedMysql mysqld;

	public void launchDb(){
		//mysql版本
		MysqldConfig config = aMysqldConfig(v5_6_23)
				.withCharset(UTF8)
				//端口号
				.withPort(13306)
				//用户名密码
				.withUser("root", "123456")
				//时区
				.withTimeZone("Asia/Shanghai")
				.withTimeout(2, TimeUnit.MINUTES)
				.withServerVariable("max_connect_errors", 666)
				.build();

		mysqld = anEmbeddedMysql(config)
				//初始化数据表结构
				.addSchema("aschema", ScriptResolver.classPathScript("db/001_init.sql"))
				.addSchema("aschema2", ScriptResolver.classPathScripts("db/*.sql"))
				.start();
	}

	public void stopDb(){
		mysqld.stop();
	}}

이제 임베디드 mysql을 시작할 수 있습니다. 이런 방식으로 매번 데이터베이스를 기동한 후 단위 테스트를 실행해야 합니다. 단위 테스트로 시작을 구성할 수 있습니다. 임베디드 데이터베이스를 동시에 시작하려면 SpringJUnit4ClassRunner 클래스를 다시 작성하세요.

자세한 내용은 GitHub 소스 코드를 참조하세요: https://github.com/wix-incubator/wix-embedded-mysql

【관련 권장 사항: mysql 비디오 튜토리얼

위 내용은 mysql 임베디드 란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.