我找不到任何关于如何使用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