Server IP : 185.86.78.101 / Your IP : 216.73.216.213 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/server/mysql/mysql-test/include/ |
Upload File : |
# # Utility functions to copy files for WL#5522 # # All the tables must be in the same database, you can call it like so: # ib_backup_tablespaces("test", "t1", "blah", ...). perl; use File::Copy; use File::Spec; sub ib_normalize_path { my ($path) = @_; } sub ib_backup_ibd_file { my ($db, $table) = @_; my $datadir = $ENV{'MYSQLD_DATADIR'}; my $ibd_file = sprintf("%s.ibd", $table); my $tmpd = $ENV{'MYSQLTEST_VARDIR'} . "/tmp"; my @args = (File::Spec->catfile($datadir, $db, $ibd_file), File::Spec->catfile($tmpd, $ibd_file)); copy(@args) or die "copy @args failed: $!"; copy(@args) or die "copy @args failed: $!"; } sub ib_backup_cfg_file { my ($db, $table) = @_; my $datadir = $ENV{'MYSQLD_DATADIR'}; my $cfg_file = sprintf("%s.cfg", $table); my $tmpd = $ENV{'MYSQLTEST_VARDIR'} . "/tmp"; my @args = (File::Spec->catfile($datadir, $db, $cfg_file), File::Spec->catfile($tmpd, $cfg_file)); copy(@args) or die "copy @args failed: $!"; } sub ib_backup_tablespace { my ($db, $table) = @_; ib_backup_ibd_file($db, $table); ib_backup_cfg_file($db, $table); } sub ib_cleanup { my ($db, $table) = @_; my $datadir = $ENV{'MYSQLD_DATADIR'}; my $cfg_file = sprintf("%s.cfg", $table); print "unlink: $cfg_file\n"; # These may or may not exist unlink(File::Spec->catfile($datadir, $db, $cfg_file)); } sub ib_unlink_tablespace { my ($db, $table) = @_; my $datadir = $ENV{'MYSQLD_DATADIR'}; my $ibd_file = sprintf("%s.ibd", $table); print "unlink: $ibd_file\n"; # This may or may not exist unlink(File::Spec->catfile($datadir, $db, $ibd_file)); ib_cleanup($db, $table); } sub ib_backup_tablespaces { my ($db, @tables) = @_; foreach my $table (@tables) { print "backup: $table\n"; ib_backup_tablespace($db, $table); } } sub ib_discard_tablespace { } sub ib_discard_tablespaces { } sub ib_restore_cfg_file { my ($tmpd, $datadir, $db, $table) = @_; my $cfg_file = sprintf("%s.cfg", $table); my @args = (File::Spec->catfile($tmpd, $cfg_file), File::Spec->catfile($datadir, "$db", $cfg_file)); copy(@args) or die "copy @args failed: $!"; } sub ib_restore_ibd_file { my ($tmpd, $datadir, $db, $table) = @_; my $ibd_file = sprintf("%s.ibd", $table); my @args = (File::Spec->catfile($tmpd, $ibd_file), File::Spec->catfile($datadir, $db, $ibd_file)); copy(@args) or die "copy @args failed: $!"; } sub ib_restore_tablespace { my ($db, $table) = @_; my $datadir = $ENV{'MYSQLD_DATADIR'}; my $tmpd = $ENV{'MYSQLTEST_VARDIR'} . "/tmp"; ib_restore_cfg_file($tmpd, $datadir, $db, $table); ib_restore_ibd_file($tmpd, $datadir, $db, $table); } sub ib_restore_tablespaces { my ($db, @tables) = @_; foreach my $table (@tables) { print "restore: $table .ibd and .cfg files\n"; ib_restore_tablespace($db, $table); } } sub ib_restore_cfg_files { my ($db, @tables) = @_; my $datadir = $ENV{'MYSQLD_DATADIR'}; my $tmpd = $ENV{'MYSQLTEST_VARDIR'} . "/tmp"; foreach my $table (@tables) { print "restore: $table .cfg file\n"; ib_restore_cfg_file($tmpd, $datadir, $db, $table); } } sub ib_restore_ibd_files { my ($db, @tables) = @_; my $datadir = $ENV{'MYSQLD_DATADIR'}; my $tmpd = $ENV{'MYSQLTEST_VARDIR'} . "/tmp"; foreach my $table (@tables) { print "restore: $table .ibd file\n"; ib_restore_ibd_file($tmpd, $datadir, $db, $table); } } EOF