in reply to
dump_mysql.pl - when you don't have mysqldump
Some comments on the implementation:
- If you don't want to prompt the user for username and password, it would be advisable to get them from a configuration file, instead of hardcoding them into the script. See this script for an example.
- You don't need to get the table columns to create an INSERT statement. If you are inserting all the fields, your insert can be either "INSERT INTO tablename (col1 col2 col3) VALUES ('a','b','c')" or "INSERT INTO tablename VALUES ('a','b','c')". Of course this statement is helpful if the order of columns changes, but on a regular case it isn't needed.
The table structure
can be created by adding this snippet:
# after printing the initial table comments
print $dbh->selectall_arrayref("SHOW CREATE TABLE $table")->,"\n
Adding some parameters to let the user decide whether or not having this creation statement and maybe a DROP TABLE before it should be straightforward. Check Getopt::Long
for some help.
_ _ _ _
(_|| | |(_|><