我找不到任何關於如何使用ant任務轉儲MySQL數據庫的信息。如何使用ant轉儲MySQL數據庫?
我是否必須創建自己的任務來完成此任務?
ANT script ===generate==> myDataBase.sql
我找不到任何關於如何使用ant任務轉儲MySQL數據庫的信息。如何使用ant轉儲MySQL數據庫?
我是否必須創建自己的任務來完成此任務?
ANT script ===generate==> myDataBase.sql
創建一個運行這樣的「mysqldump的」命令的目標:
<target name="dump-database">
<exec executable="mysqldump" output="database-dump.sql">
<arg value="--user=username" />
<arg value="--password=password" />
<arg value="--host=localhost" />
<arg value="--port=3306" />
<arg value="mydatabase" />
</exec>
</target>
現在你可以通過執行螞蟻轉儲數據庫
您可以使用Exec的任務,這將啓動腳本將執行一切必要的行動傾銷(或其他)。
而且進行轉儲導入一些SQL文件使用螞蟻,這也是有用的:
<exec executable="mysql" failonerror="true" input="file.sql">
<arg value="-u ${user}" />
<arg value="-p${pass}" />
<arg value="-h ${host}" />
<arg value="-P 3306" />
<arg value="-D ${database}" />
</exec>
*請注意,正確的是-ppassword,而不是-p密碼
或:
<exec executable="mysql" failonerror="true" input="file.sql">
<arg value="--user=${user}" />
<arg value="--password=${pass}" />
<arg value="--host=${host}" />
<arg value="--port=3306" />
<arg value="--database=${database}" />
</exec>
這也是不錯的,因爲它不使用外部庫/ SQL司機喜歡org.gjt.mm.mysql.Driver。
如果你想使數據驅動的,試試這個傢伙使用ant SQL任務:
<macrodef name="sql-retrieve-table-schema">
<attribute name="schema-name"/>
<attribute name="table-name"/>
<attribute name="connection-url"/>
<attribute name="output-file"/>
<sequential>
<sql userid="username" url="@{connection-url}" classpathref="compile.classpath"
password="apassword" driver="com.mysql.jdbc.Driver" print="true" output="@{output-file}"
showheaders="false" showtrailers="false">
SHOW CREATE TABLE @{table-name};
</sql>
</sequential>
</macrodef>
請我的問題http://stackoverflow.com/questions/15835076/ant-build-failed-對於MySQL的 – Devendra 2013-04-05 14:12:59