Rumah  >  Artikel  >  pangkalan data  >  apakah mysql tertanam

apakah mysql tertanam

藏色散人
藏色散人asal
2023-04-05 11:10:532366semak imbas

mysql terbenam ialah perpustakaan yang menyediakan kaedah untuk menjalankan MySql sebenar dalam ujian penyepaduan; pengguna boleh melaksanakan MySQL terbenam dengan menyepadukan pakej jar tanpa memasang Mysql, pemadaman, pengubahsuaian dan operasi lain yang berkaitan.

apakah mysql tertanam

Persekitaran pengendalian tutorial ini: sistem Windows 10, versi mysql8, komputer Dell G3.

Penggunaan EmbeddedMySql

Apakah Embedded MySql?

Pustaka MySql Terbenam menyediakan cara untuk menjalankan MySql sebenar dalam ujian penyepaduan. Kami boleh melaksanakan MySQL terbenam dengan menyepadukan pakej balang ini Tidak perlu memasang Mysql untuk melakukan penambahan pangkalan data, pemadaman, pengubahsuaian dan operasi lain yang berkaitan.

Penggunaan MySql terbenam

Mula-mula perkenalkan kebergantungan maven

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

Langkah seterusnya ialah penggunaan Java kod. Konfigurasikan parameter yang berkaitan dengan permulaan pangkalan data terbenam.

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();
	}}

Anda kini boleh menjalankan permulaan mysql terbenam. Dengan cara ini, pangkalan data mesti dimulakan setiap kali dan kemudian ujian unit dilaksanakan. Kami boleh mengkonfigurasi permulaan ke dalam ujian unit. Tulis semula kelas SpringJUnit4ClassRunner untuk memulakan pangkalan data terbenam pada masa yang sama.

Untuk butiran, anda boleh merujuk kepada kod sumber GitHub: https://github.com/wix-incubator/wix-embedded-mysql

[Cadangan berkaitan: tutorial video mysql]

Atas ialah kandungan terperinci apakah mysql tertanam. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:apakah klien mysqlArtikel seterusnya:apakah klien mysql