版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
-.zMYSQL分布式中間件MYSQL數(shù)據(jù)庫(kù)主從復(fù)制的實(shí)現(xiàn)MySQL的主從復(fù)制是通過(guò)binlog日志來(lái)實(shí)現(xiàn)的,主從復(fù)制中的“主〞指的是MySQL主效勞器上的數(shù)據(jù)庫(kù),“從〞指的是MySQL從效勞器上的數(shù)據(jù)庫(kù),且這種復(fù)制是基于數(shù)據(jù)庫(kù)級(jí)別的,為此從效勞器中的數(shù)據(jù)庫(kù)名稱(chēng)必須和主效勞器中的數(shù)據(jù)庫(kù)名稱(chēng)保持一致,則,要想實(shí)現(xiàn)主從復(fù)制,我們至少要有兩個(gè)MySQL效勞器〔最好是兩個(gè)MySQL效勞器分別位于不同的主機(jī)上,或者在一個(gè)主機(jī)上安裝兩個(gè)MySQL,端口不同即可〕數(shù)據(jù)庫(kù)效勞器的參數(shù):主效勞器〔master〕:IP為,端口為33306從效勞器〔slave〕:IP為,端口為33307從效勞器〔slave〕:IP為,端口為33308主效勞器配置:修改主效勞器的數(shù)據(jù)庫(kù)配置文件〔\mysql\bin\my.ini〕,在[mysqld]標(biāo)簽的最下面,添加如下代碼:*需要備份的數(shù)據(jù)庫(kù)binlog-do-db=mycat*不需要備份的數(shù)據(jù)庫(kù)binlog-ignore-db=mysql*開(kāi)啟二進(jìn)制日志log-bin=mysql-bin*效勞器idserver-id=1保存退出,重啟MySQL主效勞器。binlog-do-db用于指定需要同步的數(shù)據(jù)庫(kù),binlog-ignore-db指定不需要同步的數(shù)據(jù)庫(kù),如果這兩個(gè)參數(shù)都不設(shè)置,則從效勞器會(huì)復(fù)制主效勞器的所有數(shù)據(jù)庫(kù)。一般不用root賬號(hào)作同步賬號(hào),為此,我們需要在主效勞器上創(chuàng)立一個(gè)新的用戶(hù)〔如user01,密碼為123456〕這里我們用命令行的方式創(chuàng)立,方法如下:翻開(kāi)cmd,切換至\mysql\bin,用root賬戶(hù)連接MySQL主效勞器:-P33306創(chuàng)立新用戶(hù):createuser'user01'''identifiedby'123456';〔后面的ip地址為允許連接的客戶(hù)端的ip地址。〕然后,給新用戶(hù)配置主從復(fù)制的權(quán)限:grantreplicationslaveon*.*to'user01'''identifiedby'123456';〔后面的ip地址為允許連接的客戶(hù)端的ip地址,如果改為'%',就表示客戶(hù)端沒(méi)有ip地址的限制〕如果主效勞器的數(shù)據(jù)庫(kù)〔mycat〕中,已經(jīng)有數(shù)據(jù),我們需要先手動(dòng)把主效勞器中的數(shù)據(jù)復(fù)制到從效勞器。方法如下:在本案例中,我們只備份一個(gè)數(shù)據(jù)庫(kù)〔mycat〕,mycat中有一個(gè)表user,表中也已經(jīng)有了數(shù)據(jù)。為了防止我們復(fù)制數(shù)據(jù)的時(shí)候,數(shù)據(jù)庫(kù)mycat中的數(shù)據(jù)發(fā)生更新,我們需要先鎖定數(shù)據(jù)庫(kù),命令如下:flushtableswithreadlock;這個(gè)命令是全局讀鎖定,它會(huì)給主效勞器中的所有數(shù)據(jù)庫(kù)都加上讀鎖,這里順便說(shuō)一下讀鎖和寫(xiě)鎖的區(qū)別:readlock〔讀鎖〕:也叫共享鎖,允許所有的讀操作,但阻塞寫(xiě)操作,即所有連接只可以讀數(shù)據(jù),但不允許寫(xiě)數(shù)據(jù)。writelock〔寫(xiě)鎖〕:也叫排它鎖、獨(dú)占鎖,只允許當(dāng)前連接的讀和寫(xiě),不允許其他并發(fā)的讀操作和寫(xiě)操作。鎖定主效勞器的數(shù)據(jù)庫(kù)后,我們?cè)趶男谄髦?,也?chuàng)立一個(gè)數(shù)據(jù)庫(kù)test,并將所有的表〔包括表構(gòu)造和表數(shù)據(jù)〕都導(dǎo)入。然后,我們執(zhí)行下面的命令,解鎖:unlocktables;查看主效勞器的master狀態(tài):mysql>showmasterstatus;從效勞器配置:修改從效勞器的數(shù)據(jù)庫(kù)配置文件〔\mysql\my.ini〕,在[mysqld]標(biāo)簽的最下面,添加如下代碼:*端口port=33307*效勞器idserver_id=2*開(kāi)啟二進(jìn)制日志〔從效勞器不是必須要開(kāi)啟二進(jìn)制日志〕log-bin=mysql-bin保存退出,重啟MySQL效勞。連接MySQL從效勞器:-P33307配置復(fù)制的參數(shù):changemastertomaster_host='',master_user='user01',master_password='123456',master_port=33306,master_log_file='mysql-bin.000008',master_log_pos=498;參數(shù)詳解:master_host:主效勞器的IP
master_user:主效勞器上新創(chuàng)立的用戶(hù)名
master_password:用戶(hù)的密碼
master_port:主效勞器的端口,如果未曾修改,默認(rèn)即可。master_log_file:主效勞器二進(jìn)制日志文件的名稱(chēng),填寫(xiě)查看主效勞器的master狀態(tài)時(shí)顯示的File的值master_log_pos:日志的位置,填寫(xiě)查看主效勞器的master狀態(tài)時(shí)顯示的Position的值啟動(dòng)從效勞器的slave復(fù)制功能:startslave;查看從效勞器的slave狀態(tài):mysql>showslavestatus\G如果Slave_IO_Running和Slave_SQL_Running的值都為Yes,則說(shuō)明主從復(fù)制的所有配置已成功,即從效勞器已經(jīng)可以自動(dòng)與主效勞器的數(shù)據(jù)庫(kù)數(shù)據(jù)實(shí)現(xiàn)同步了MYSQL數(shù)據(jù)庫(kù)讀寫(xiě)別離數(shù)據(jù)庫(kù)中間件選型:Cobar:阿里巴巴B2B開(kāi)發(fā)的關(guān)系型分布式系統(tǒng),管理將近3000個(gè)MySQL實(shí)例。在阿里經(jīng)受住了考驗(yàn),后面由于作者的走開(kāi)的原因cobar沒(méi)有人維護(hù)了,阿里也開(kāi)發(fā)了tddl替代cobar。MyCAT:社區(qū)愛(ài)好者在阿里cobar根底上進(jìn)展二次開(kāi)發(fā),解決了cobar當(dāng)時(shí)存在的一些問(wèn)題,并且參加了許多新的功能在其中。目前MyCAT社區(qū)活躍度很高,目前已經(jīng)有一些公司在使用MyCAT??傮w來(lái)說(shuō)支持度比較高,也會(huì)一直維護(hù)下去,OnePro*y:數(shù)據(jù)庫(kù)界大牛,前支付寶數(shù)據(jù)庫(kù)團(tuán)隊(duì)領(lǐng)導(dǎo)樓總開(kāi)發(fā),基于mysql官方的pro*y思想利用c進(jìn)展開(kāi)發(fā)的,OnePro*y是一款商業(yè)收費(fèi)的中間件,樓總舍去了一些功能點(diǎn),專(zhuān)注在性能和穩(wěn)定性上。有朋友測(cè)試過(guò)說(shuō)在高并發(fā)下很穩(wěn)定。Vitess:這個(gè)中間件是Youtube生產(chǎn)在使用的,但是架構(gòu)很復(fù)雜。與以往中間件不同,使用Vitess應(yīng)用改動(dòng)比較大,要使用他提供語(yǔ)言的API接口,我們可以借鑒他其中的一些設(shè)計(jì)思想。Kingshard:Kingshard是前360Atlas中間件開(kāi)發(fā)團(tuán)隊(duì)的陳菲利用業(yè)務(wù)時(shí)間用go語(yǔ)言開(kāi)發(fā)的,目前參與開(kāi)發(fā)的人員有3個(gè)左右,目前來(lái)看還不是成熟可以使用的產(chǎn)品,需要在不斷完善。Atlas:360團(tuán)隊(duì)基于mysqlpro*y把lua用C改寫(xiě)。原有版本是支持分表,目前已經(jīng)放出了分庫(kù)分表版本。在網(wǎng)上看到一些朋友經(jīng)常說(shuō)在高并發(fā)下會(huì)經(jīng)常掛掉,如果大家要使用需要提前做好測(cè)試。Ma*Scale與MySQLRoute:這兩個(gè)中間件都算是官方的吧,Ma*Scale是mariadb(MySQL原作者維護(hù)的一個(gè)版本)研發(fā)的,目前版本不支持分庫(kù)分表。MYCAT概述2.1什么是MyCat.簡(jiǎn)單的說(shuō),MyCAT就是:一個(gè)新穎的數(shù)據(jù)庫(kù)中間件產(chǎn)品;一個(gè)徹底開(kāi)源的、面向企業(yè)應(yīng)用開(kāi)發(fā)的“大數(shù)據(jù)庫(kù)集群〞;支持事務(wù)、ACID、可以替代MySQL的加強(qiáng)版數(shù)據(jù)庫(kù);一個(gè)可以視為“MySQL〞集群的企業(yè)級(jí)數(shù)據(jù)庫(kù),用來(lái)替代昂貴的Oracle集群;一個(gè)融合內(nèi)存緩存技術(shù)、Nosql技術(shù)、HDFS大數(shù)據(jù)的新型SQLServer;結(jié)合傳統(tǒng)數(shù)據(jù)庫(kù)和新型分布式數(shù)據(jù)倉(cāng)庫(kù)的新一代企業(yè)級(jí)數(shù)據(jù)庫(kù)產(chǎn)品。2.2MyCat的目標(biāo)MyCAT的目標(biāo)是:低本錢(qián)的將現(xiàn)有的單機(jī)數(shù)據(jù)庫(kù)和應(yīng)用平滑遷移到“云〞端,解決數(shù)據(jù)存儲(chǔ)和業(yè)務(wù)規(guī)模迅速增長(zhǎng)情況下的數(shù)據(jù)瓶頸問(wèn)題。2.3MyCat的關(guān)鍵特性·支持SQL92標(biāo)準(zhǔn)
支持Mysql集群,可以作為Pro*y使用
支持JDBC連接ORACLE、DB2、SQLServer,將其模擬為MySQLServer使用
支持NoSQL數(shù)據(jù)庫(kù)
支持galeraformysql集群,percona-cluster或者mariadbcluster,提供高可用性數(shù)據(jù)分片集群
自動(dòng)故障切換,高可用性
支持讀寫(xiě)別離,支持Mysql雙主多從,以及一主多從的模式
支持全局表,數(shù)據(jù)自動(dòng)分片到多個(gè)節(jié)點(diǎn),用于高效表關(guān)聯(lián)查詢(xún)
支持獨(dú)有的基于E-R關(guān)系的分片策略,實(shí)現(xiàn)了高效的表關(guān)聯(lián)查詢(xún)
支持一致性Hash分片,有效解決分片擴(kuò)容難題
多平臺(tái)支持,部署和實(shí)施簡(jiǎn)單
支持Catelet開(kāi)發(fā),類(lèi)似數(shù)據(jù)庫(kù)存儲(chǔ)過(guò)程,用于跨分片復(fù)雜SQL的人工智能編碼實(shí)現(xiàn),143行Demo完成跨分片的兩個(gè)表的JION查詢(xún)。
支持NIO與AIO兩種網(wǎng)絡(luò)通信機(jī)制,Windows下建議AIO,Linu*下目前建議NIO
支持Mysql存儲(chǔ)過(guò)程調(diào)用
以插件方式支持SQL攔截和改寫(xiě)
支持自增長(zhǎng)主鍵、支持Oracle的Sequence機(jī)制2.4MyCat的優(yōu)勢(shì)·基于阿里開(kāi)源的Cobar產(chǎn)品而研發(fā),Cobar的穩(wěn)定性、可靠性、優(yōu)秀的架構(gòu)和性能,以及眾多成熟的使用案例使得MyCAT一開(kāi)場(chǎng)就擁有一個(gè)很好的起點(diǎn),站在巨人的肩膀上,能看到更遠(yuǎn)?!V泛吸取業(yè)界優(yōu)秀的開(kāi)源工程和創(chuàng)新思路,將其融入到MyCAT的基因中,使得MyCAT在很多方面都領(lǐng)先于目前其他一些同類(lèi)的開(kāi)源工程,甚至超越*些商業(yè)產(chǎn)品。·MyCAT背后有一只強(qiáng)大的技術(shù)團(tuán)隊(duì),其參與者都是5年以上資深軟件工程師、架構(gòu)師、DBA等,優(yōu)秀的技術(shù)團(tuán)隊(duì)保證了MyCAT的產(chǎn)品質(zhì)量。·MyCAT并不依托于任何一個(gè)商業(yè)公司,因此不像*些開(kāi)源工程,將一些重要的特性封閉在其商業(yè)產(chǎn)品中,使得開(kāi)源工程成了一個(gè)擺設(shè)。MYCAT下載和安裝3.1MyCAT使用Java開(kāi)發(fā),因?yàn)橛玫搅薐DK7的局部功能,所以在使用前請(qǐng)確保安裝了JDK7.0,要求是JDK7.0以上,并設(shè)置了正確的Java環(huán)境變量。目前下載的版本Mycat-server-1.6-RELEASE-710-win.tar.gz是免安裝,解壓在任意磁盤(pán)、根目錄下,防止路徑中出現(xiàn)中文,需配置環(huán)境變量MYCAT_HOME。解壓后的目錄構(gòu)造如以下圖所示:目錄說(shuō)明:Bin:存放window版本和linu*版本,除了提供封裝成效勞的版本之外,也提供nowrap的shell腳本命令,方便大家選擇和修改。Windows下運(yùn)行:mycat.batconsole在控制臺(tái)啟動(dòng)程序,也可以裝載成效勞,假設(shè)此程序運(yùn)行有問(wèn)題,也可以運(yùn)行startup_nowrap.bat,確保java命令可以在命令執(zhí)行。Conf:存放配置文件:lserver.*ml:是Mycat效勞器參數(shù)調(diào)整和用戶(hù)授權(quán)的配置文件。lschema.*ml:是邏輯庫(kù)定義和表以及分片定義的配置文件。lrule.*ml:是分片規(guī)則的配置文件,分片規(guī)則的具體一些參數(shù)信息單獨(dú)存放為文件,也在這個(gè)目錄下,配置文件修改,需要重啟MyCAT或者通過(guò)9066端口reload。lwrapper.conf:JVM配置參數(shù)等設(shè)置。llog4j.*ml:日志存放在logs/mycat.log中,每天一個(gè)文件,日志的配置是在conf/log4j.*ml中,根據(jù)自己的需要,可以調(diào)整輸出級(jí)別為debug,debug級(jí)別下,會(huì)輸出更多的信息,方便排查問(wèn)題。Lib: MyCAT自身的jar包或依賴(lài)的jar包的存放目錄。Logs:MyCAT日志的存放目錄。日志存放在logs/mycat.log中,每天一個(gè)文件。Version.t*t:版本說(shuō)明3.2MyCAT啟動(dòng)和停頓安裝效勞:mycatinstall啟動(dòng)效勞:mycatstart停頓效勞:mycatstop注意:當(dāng)修改配置文件后,需要重啟mycat效勞3.3讀寫(xiě)別離配置3.3.1配置連接信息Mycat的server.*ml配置邏輯庫(kù)的名稱(chēng)的賬號(hào)密碼<username="root"> <propertyname="password">.</property> <propertyname="schemas">mycat</property> </user>配置說(shuō)明:配置中name是應(yīng)用連接中間件邏輯庫(kù)的用戶(hù)名。mycat中password是應(yīng)用連接中間件邏輯庫(kù)的密碼。schemas中可以配置一個(gè)或多個(gè)。readOnly是應(yīng)用連接中間件邏輯庫(kù)所具有的權(quán)限。true為只讀,false為讀寫(xiě)都有,默認(rèn)為false。3.3.2配置數(shù)據(jù)庫(kù)信息<schemaname="mycat"checkSQLschema="false"sqlMa*Limit="100"dataNode="dn1"></schema><dataNodename="dn1"dataHost="localhost1"database="mycat"/><dataHostname="localhost1"ma*Con="1000"minCon="2"balance="3"writeType="0"dbType="mysql"dbDriver="native"switchType="1"slaveThreshold="100"><heartbeat>selectuser()</heartbeat><writeHosthost="Mycat"url=":33306"user="root"password="."><readHosthost="TestMycat1"url=":33307"user="root"password="."/><readHosthost="TestMycat2"url=":33308"user="root"password="."/></writeHost></dataHost>
配置說(shuō)明:name屬性唯一標(biāo)識(shí)dataHost標(biāo)簽,供上層的標(biāo)簽使用。ma*Con屬性指定每個(gè)讀寫(xiě)實(shí)例連接池的最**接。也就是說(shuō),標(biāo)簽內(nèi)嵌套的writeHost、readHost標(biāo)簽都會(huì)使用這個(gè)屬性的值來(lái)實(shí)例化出連接池的最**接數(shù)。minCon屬性指定每個(gè)讀寫(xiě)實(shí)例連接池的最小連接,初始化連接池的大小。balance屬性負(fù)載均衡類(lèi)型,目前的取值有3種:1.balance="0",不開(kāi)啟讀寫(xiě)別離機(jī)制,所有讀操作都發(fā)送到當(dāng)前可用的writeHost上。2.balance="1",全部的readHost與standbywriteHost參與select語(yǔ)句的負(fù)載均衡,簡(jiǎn)單的說(shuō),當(dāng)雙主雙從模式(M1->S1,M2->S2,并且M1與M2互為主備),正常情況下,M2,S1,S2都參與select語(yǔ)句的負(fù)載均衡。3.balance="2",所有讀操作都隨機(jī)的在writeHost、readhost上分發(fā)。4.balance="3",所有讀請(qǐng)求隨機(jī)的分發(fā)到wiriterHost對(duì)應(yīng)的readhost執(zhí)行,writerHost不負(fù)擔(dān)讀壓力,注意balance=3只在1.4及其以后版本有,1.3沒(méi)有。
writeType屬性負(fù)載均衡類(lèi)型,目前的取值有3種:1.writeType="0",所有寫(xiě)操作發(fā)送到配置的第一個(gè)writeHost,第一個(gè)掛了切到還生存的第二個(gè)writeHost,重新啟動(dòng)后已切換后的為準(zhǔn),切換記錄在配置文件中:dninde*.properties.2.writeType="1",所有寫(xiě)操作都隨機(jī)的發(fā)送到配置的writeHost,1.5以后廢棄不推薦。3.writeType="2",不執(zhí)行寫(xiě)操作switchType屬性-1表示不自動(dòng)切換1默認(rèn)值,自動(dòng)切換2基于MySQL主從同步的狀態(tài)決定是否切換3基于MySQLgalarycluster的切換機(jī)制〔適合集群〕〔1.4.1〕心跳語(yǔ)句為showstatuslike‘wsrep%’dbType屬性指定后端連接的數(shù)據(jù)庫(kù)類(lèi)型,目前支持二進(jìn)制的mysql協(xié)議,還有其他使用JDBC連接的數(shù)據(jù)庫(kù)。例如:mongodb、oracle、spark等。dbDriver屬性指定連接后端數(shù)據(jù)庫(kù)使用的Driver,目前可選的值有native和JDBC。使用native的話(huà),因?yàn)檫@個(gè)值執(zhí)行的是二進(jìn)制的mysql協(xié)議,所以可以使用mysql和maridb。其他類(lèi)型的數(shù)據(jù)庫(kù)則需要使用JDBC驅(qū)動(dòng)來(lái)支持。從1.6版本開(kāi)場(chǎng)支持postgresql的native原始協(xié)議。如果使用JDBC的話(huà)需要將符合JDBC4標(biāo)準(zhǔn)的驅(qū)動(dòng)JAR包放到MYCAT\lib目錄下,并檢查驅(qū)動(dòng)JAR包中包括如下目錄構(gòu)造的文件:META-INF\services\java.sql.Driver。在這個(gè)文件內(nèi)寫(xiě)上具體的Driver類(lèi)名,例如:.mysql.jdbc.Driver。heartbeat標(biāo)簽這個(gè)標(biāo)簽內(nèi)指明用于和后端數(shù)據(jù)庫(kù)進(jìn)展心跳檢查的語(yǔ)句。例如,MYSQL可以使用selectuser(),Oracle可以使用select1fromdual等。這個(gè)標(biāo)簽還有一個(gè)connectionInitSql屬性,主要是當(dāng)使用Oracla數(shù)據(jù)庫(kù)時(shí),需要執(zhí)行的初始化SQL語(yǔ)句就這個(gè)放到這里面來(lái)。例如:altersessionsetnls_date_format='yyyy-mm-ddhh24:mi:ss'1.4主從切換的語(yǔ)句必須是:showslavestatuswriteHost標(biāo)簽、readHost標(biāo)簽這兩個(gè)標(biāo)簽都指定后端數(shù)據(jù)庫(kù)的相關(guān)配置給mycat,用于實(shí)例化后端連接池。唯一不同的是,writeHost指定寫(xiě)實(shí)例、readHost指定讀實(shí)例,組著這些讀寫(xiě)實(shí)例來(lái)滿(mǎn)足系統(tǒng)的要求。在一個(gè)dataHost內(nèi)可以定義多個(gè)writeHost和readHost。但是,如果writeHost指定的后端數(shù)據(jù)庫(kù)宕機(jī),則這個(gè)writeHost綁定的所有readHost都將不可用。另一方面,由于這個(gè)writeHost宕機(jī)系統(tǒng)會(huì)自動(dòng)的檢測(cè)到,并切換到備用的writeHost上去。3.4啟動(dòng)mycat在mycat的lib包下面丟入mysql的驅(qū)動(dòng)包,然后在mycat\bin目錄下找到startup_nowrap.bat雙擊運(yùn)行。雙擊沒(méi)有一閃而退,就啟動(dòng)成功了。如果啟動(dòng)不成功,仔細(xì)檢查配置信息3.5測(cè)試所需jar包測(cè)試代碼4.1讀測(cè)試packagetest;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLE*ception;importjava.sql.Statement;publicclassMysqlConTest{privatestaticStringurl="jdbc:mysql://:8066/mycat?useUnicode=true&characterEncoding=utf-8";privatestaticStringusername="root";privatestaticStringpassword=".";privatestaticStringdriverName=".mysql.jdbc.Driver";publicMysqlConTest(){super();//TODOAuto-generatedconstructorstub }static{try{ Class.forName(driverName); }catch(ClassNotFoundE*ceptione){//TODOAuto-generatedcatchblock e.printStackTrace(); } }publicstaticConnectiongetConnection()throwsSQLE*ception{returnDriverManager.getConnection(url,username,password); }publicstaticvoidclose(ResultSetrs,Statementst,Connectionconn){try{if(rs!=null){ rs.close(); } }catch(SQLE*ceptione){//TODOAuto-generatedcatchblock e.printStackTrace(); }finally{try{if(st!=null){ st.close(); } }catch(SQLE*ceptione){//TODOAuto-generatedcatchblock e.printStackTrace(); }finally{if(conn!=null){try{ conn.close(); }catch(SQLE*ceptione){//TODOAuto-generatedcatchblock e.printStackTrace(); } } } } }publicstaticvoidmain(String[]args){ Connectionconn=null; PreparedStatementps=null; ResultSetrs=null;try{ conn=getConnection(); Stringsql="selectvalue_namefromsystem_value"; ps=conn.prepareStatement(sql); rs=ps.e*ecuteQuery(sql);while(rs.ne*t()){ System.out.println(rs.getString("value_name")); } }catch(SQLE*ceptione){ e.printStackTrace(); }finally{close(rs,ps,conn); } }}4.2寫(xiě)測(cè)試packagetest;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.SQLE*ception;importjava.sql.Statement;publicclassMysqlConTestInsert{privatestaticStringurl="jdbc:mysql://:8066/mycat?useUnicode=true&characterEncoding=utf-8";privatestaticStringusername="root";privatestaticStringpassword=".";privatestaticStringdriverName=".mysql.jdbc.Driver";publicMysqlConTestInsert(){super();//TODOAuto-gener
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 44983-2024肉類(lèi)食品加工機(jī)械術(shù)語(yǔ)
- 工作總結(jié)之環(huán)藝畢業(yè)實(shí)習(xí)總結(jié)
- 工作總結(jié)之電商頂崗實(shí)習(xí)總結(jié)
- 2024年電磁傳感器項(xiàng)目資金籌措計(jì)劃書(shū)代可行性研究報(bào)告
- 銀行合規(guī)管理制度考核
- 采購(gòu)信息管理與統(tǒng)計(jì)分析制度
- 《診斷思路》課件
- 磚銷(xiāo)售合同(范例14篇)
- 大學(xué)信息化產(chǎn)品及項(xiàng)目驗(yàn)收?qǐng)?bào)告單
- 光的直線(xiàn)傳播、光速課件
- 功能科提高動(dòng)態(tài)心電圖檢查人次PDCA
- 語(yǔ)文01-2025年1月“八省聯(lián)考”考前猜想卷(全解全析)
- 人教版八年級(jí)物理上冊(cè)《第六章質(zhì)量與密度》單元測(cè)試卷(帶答案)
- 電梯維保服務(wù)客戶(hù)滿(mǎn)意度提升方案
- 項(xiàng)目經(jīng)理年度工作總結(jié)
- 2024冬至節(jié)氣的教案
- 【碳足跡報(bào)告】中車(chē)齊齊哈爾車(chē)輛有限公司產(chǎn)品碳足跡報(bào)告
- 2024公職人員時(shí)事政治試題庫(kù)含答案(綜合題)
- 《三七蒸制前后質(zhì)量評(píng)價(jià)及蒸三七多糖化學(xué)成分研究》
- 最好的設(shè)備年終總結(jié)報(bào)告
- GB/T 44569.1-2024土工合成材料內(nèi)部節(jié)點(diǎn)強(qiáng)度的測(cè)定第1部分:土工格室
評(píng)論
0/150
提交評(píng)論