我的数据库中有两个程序,名为test_proc1和test_proc2.I,希望导出这两个过程的代码,但我发现导出的文件中没有任何内容,我不知道why.Below是对我问题的详细描述:
1.程序代码test_proc1:
DELIMITER $$
USE `testmanagementb`$$
DROP PROCEDURE IF EXISTS `test_proc1`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `test_proc1`()
BEGIN
SELECT * FROM system_users;
END$$
D
我有一个视图,它返回相当多的数据。现在,视图被加载到一个文件中,如下所示:
SELECT * FROM view INTO OUTFILE /path/to/file.tmp;
然后将其从该文件加载到一个表中:
LOAD DATA INFILE /path/to/file.tmp INTO TABLE table;
然后使用mysqldump创建该表的转储(实际上是多个表,前两个步骤重复多次,然后运行mysqldump )。
有没有更好的方法来做这件事?理想情况下,我希望在不将任何内容保存到文件的情况下执行此操作。是否可以只用一条语句从视图中创建数据的sql转储?
我的转储文件是32 re,我不能再转储,在转储文件中存在一些错误,我应该使用源代码命令,源代码命令有任何强制选项吗?比如:
mysql -u user --force -p db < /path/dump.sql
例如,任何这样的选项:
mysql> SOURCE **-f** /path/dump.sql
我一直在努力寻找备份和恢复数据库的好方法,结果发现了mysqldump。我一直使用命令提示符来访问可执行文件,并且我能够使用以下命令在sql文件中创建数据库的备份:
mysqldump.exe -u [username] -p [databasename] -h localhost > [path]\backup.sql
然后我输入我的密码让它执行。
以防它不被理解:
[username]=my username for accessing the database
[databasename]=my name for the database that I'm tryi