⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mtr

📁 视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.
💻
📖 第 1 页 / 共 5 页
字号:
  mtr_init_args(\$args);  if ( $opt_valgrind_mysqltest )  {    valgrind_arguments($args, \$exe);  }  mtr_add_arg($args, "--no-defaults");  mtr_add_arg($args, "--testcase");  mtr_add_arg($args, "--user=root");  mtr_add_arg($args, "--port=$master->[0]->{'port'}");  mtr_add_arg($args, "--socket=$master->[0]->{'path_sock'}");  if ( $opt_extern || $mysql_version_id >= 50000 )  {    mtr_add_arg($args, "--vardir=$opt_vardir")  }  if ( $opt_debug )  {    mtr_add_arg($args,      "--debug=d:t:A,$path_vardir_trace/log/mysql_client_test.trace");  }  if ( $glob_use_embedded_server )  {    mtr_add_arg($args,      " -A --language=$path_language");    mtr_add_arg($args,      " -A --datadir=$slave->[0]->{'path_myddir'}");    mtr_add_arg($args,      " -A --character-sets-dir=$path_charsetsdir");  }  return join(" ", $exe, @$args);}sub mysql_upgrade_arguments(){  my $exe= $exe_mysql_upgrade;  my $args;  mtr_init_args(\$args);#  if ( $opt_valgrind_mysql_ugrade )#  {#    valgrind_arguments($args, \$exe);#  }  mtr_add_arg($args, "--no-defaults");  mtr_add_arg($args, "--user=root");  mtr_add_arg($args, "--port=$master->[0]->{'port'}");  mtr_add_arg($args, "--socket=$master->[0]->{'path_sock'}");  mtr_add_arg($args, "--datadir=$master->[0]->{'path_myddir'}");  mtr_add_arg($args, "--basedir=$glob_basedir");  if ( $opt_debug )  {    mtr_add_arg($args,      "--debug=d:t:A,$path_vardir_trace/log/mysql_upgrade.trace");  }  return join(" ", $exe, @$args);}# Note that some env is setup in spawn/run, in "mtr_process.pl"sub environment_setup () {  umask(022);  my @ld_library_paths;  # --------------------------------------------------------------------------  # Setup LD_LIBRARY_PATH so the libraries from this distro/clone  # are used in favor of the system installed ones  # --------------------------------------------------------------------------  if ( $source_dist )  {    push(@ld_library_paths, "$glob_basedir/libmysql/.libs/",                            "$glob_basedir/libmysql_r/.libs/",                            "$glob_basedir/zlib.libs/");  }  else  {    push(@ld_library_paths, "$glob_basedir/lib");  } # --------------------------------------------------------------------------  # Add the path where libndbclient can be found  # --------------------------------------------------------------------------  if ( $glob_ndbcluster_supported )  {    push(@ld_library_paths,  "$glob_basedir/storage/ndb/src/.libs");  }  # --------------------------------------------------------------------------  # Add the path where mysqld will find udf_example.so  # --------------------------------------------------------------------------  if ( $lib_udf_example )  {    push(@ld_library_paths, dirname($lib_udf_example));  }  # --------------------------------------------------------------------------  # Valgrind need to be run with debug libraries otherwise it's almost  # impossible to add correct supressions, that means if "/usr/lib/debug"  # is available, it should be added to  # LD_LIBRARY_PATH  #  # But pthread is broken in libc6-dbg on Debian <= 3.1 (see Debian  # bug 399035, http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=399035),  # so don't change LD_LIBRARY_PATH on that platform.  # --------------------------------------------------------------------------  my $debug_libraries_path= "/usr/lib/debug";  my $deb_version;  if (  $opt_valgrind and -d $debug_libraries_path and        (! -e '/etc/debian_version' or	 ($deb_version= mtr_grab_file('/etc/debian_version')) !~ /^[0-9]+\.[0-9]$/ or         $deb_version > 3.1 ) )  {    push(@ld_library_paths, $debug_libraries_path);  }  $ENV{'LD_LIBRARY_PATH'}= join(":", @ld_library_paths,				$ENV{'LD_LIBRARY_PATH'} ?				split(':', $ENV{'LD_LIBRARY_PATH'}) : ());  mtr_debug("LD_LIBRARY_PATH: $ENV{'LD_LIBRARY_PATH'}");  $ENV{'DYLD_LIBRARY_PATH'}= join(":", @ld_library_paths,				  $ENV{'DYLD_LIBRARY_PATH'} ?				  split(':', $ENV{'DYLD_LIBRARY_PATH'}) : ());  mtr_debug("DYLD_LIBRARY_PATH: $ENV{'DYLD_LIBRARY_PATH'}");  # The environment variable used for shared libs on AIX  $ENV{'SHLIB_PATH'}= join(":", @ld_library_paths,                           $ENV{'SHLIB_PATH'} ?                           split(':', $ENV{'SHLIB_PATH'}) : ());  mtr_debug("SHLIB_PATH: $ENV{'SHLIB_PATH'}");  # The environment variable used for shared libs on hp-ux  $ENV{'LIBPATH'}= join(":", @ld_library_paths,                        $ENV{'LIBPATH'} ?                        split(':', $ENV{'LIBPATH'}) : ());  mtr_debug("LIBPATH: $ENV{'LIBPATH'}");  # --------------------------------------------------------------------------  # Also command lines in .opt files may contain env vars  # --------------------------------------------------------------------------  $ENV{'CHARSETSDIR'}=              $path_charsetsdir;  $ENV{'UMASK'}=              "0660"; # The octal *string*  $ENV{'UMASK_DIR'}=          "0770"; # The octal *string*    #  # MySQL tests can produce output in various character sets  # (especially, ctype_xxx.test). To avoid confusing Perl  # with output which is incompatible with the current locale  # settings, we reset the current values of LC_ALL and LC_CTYPE to "C".  # For details, please see  # Bug#27636 tests fails if LC_* variables set to *_*.UTF-8  #  $ENV{'LC_ALL'}=             "C";  $ENV{'LC_CTYPE'}=           "C";    $ENV{'LC_COLLATE'}=         "C";  $ENV{'USE_RUNNING_SERVER'}= $opt_extern;  $ENV{'MYSQL_TEST_DIR'}=     $glob_mysql_test_dir;  $ENV{'MYSQLTEST_VARDIR'}=   $opt_vardir;  $ENV{'MYSQL_TMP_DIR'}=      $opt_tmpdir;  $ENV{'MASTER_MYSOCK'}=      $master->[0]->{'path_sock'};  $ENV{'MASTER_MYSOCK1'}=     $master->[1]->{'path_sock'};  $ENV{'MASTER_MYPORT'}=      $master->[0]->{'port'};  $ENV{'MASTER_MYPORT1'}=     $master->[1]->{'port'};  $ENV{'SLAVE_MYSOCK'}=       $slave->[0]->{'path_sock'};  $ENV{'SLAVE_MYPORT'}=       $slave->[0]->{'port'};  $ENV{'SLAVE_MYPORT1'}=      $slave->[1]->{'port'};  $ENV{'SLAVE_MYPORT2'}=      $slave->[2]->{'port'};  $ENV{'MYSQL_TCP_PORT'}=     $mysqld_variables{'port'};  $ENV{'DEFAULT_MASTER_PORT'}= $mysqld_variables{'master-port'};  $ENV{'IM_PATH_SOCK'}=       $instance_manager->{path_sock};  $ENV{'IM_USERNAME'}=        $instance_manager->{admin_login};  $ENV{'IM_PASSWORD'}=        $instance_manager->{admin_password};  $ENV{MTR_BUILD_THREAD}=      $opt_mtr_build_thread;  $ENV{'EXE_MYSQL'}=          $exe_mysql;  # ----------------------------------------------------  # Setup env for NDB  # ----------------------------------------------------  if ( ! $opt_skip_ndbcluster )  {    $ENV{'NDB_MGM'}=                  $exe_ndb_mgm;    $ENV{'NDBCLUSTER_PORT'}=          $opt_ndbcluster_port;    $ENV{'NDBCLUSTER_PORT_SLAVE'}=    $opt_ndbcluster_port_slave;    $ENV{'NDB_EXTRA_TEST'}=           $opt_ndb_extra_test;    $ENV{'NDB_BACKUP_DIR'}=           $clusters->[0]->{'data_dir'};    $ENV{'NDB_DATA_DIR'}=             $clusters->[0]->{'data_dir'};    $ENV{'NDB_TOOLS_DIR'}=            $path_ndb_tools_dir;    $ENV{'NDB_TOOLS_OUTPUT'}=         $path_ndb_testrun_log;    $ENV{'NDB_CONNECTSTRING'}=        $opt_ndbconnectstring;    if ( $mysql_version_id >= 50000 )    {      $ENV{'NDB_EXAMPLES_DIR'}=         $path_ndb_examples_dir;      $ENV{'MY_NDB_EXAMPLES_BINARY'}=   $exe_ndb_example;    }    $ENV{'NDB_EXAMPLES_OUTPUT'}=      $path_ndb_testrun_log;  }  # ----------------------------------------------------  # Setup env for IM  # ----------------------------------------------------  if ( ! $opt_skip_im )  {    $ENV{'IM_EXE'}=             $exe_im;    $ENV{'IM_PATH_PID'}=        $instance_manager->{path_pid};    $ENV{'IM_PATH_ANGEL_PID'}=  $instance_manager->{path_angel_pid};    $ENV{'IM_PORT'}=            $instance_manager->{port};    $ENV{'IM_DEFAULTS_PATH'}=   $instance_manager->{defaults_file};    $ENV{'IM_PASSWORD_PATH'}=   $instance_manager->{password_file};    $ENV{'IM_MYSQLD1_SOCK'}=      $instance_manager->{instances}->[0]->{path_sock};    $ENV{'IM_MYSQLD1_PORT'}=      $instance_manager->{instances}->[0]->{port};    $ENV{'IM_MYSQLD1_PATH_PID'}=      $instance_manager->{instances}->[0]->{path_pid};    $ENV{'IM_MYSQLD2_SOCK'}=      $instance_manager->{instances}->[1]->{path_sock};    $ENV{'IM_MYSQLD2_PORT'}=      $instance_manager->{instances}->[1]->{port};    $ENV{'IM_MYSQLD2_PATH_PID'}=      $instance_manager->{instances}->[1]->{path_pid};  }  # ----------------------------------------------------  # Setup env so childs can execute mysqlcheck  # ----------------------------------------------------  my $cmdline_mysqlcheck=    mtr_native_path($exe_mysqlcheck) .      " --no-defaults -uroot " .      "--port=$master->[0]->{'port'} " .      "--socket=$master->[0]->{'path_sock'} --password=";  if ( $opt_debug )  {    $cmdline_mysqlcheck .=      " --debug=d:t:A,$path_vardir_trace/log/mysqlcheck.trace";  }  $ENV{'MYSQL_CHECK'}=              $cmdline_mysqlcheck;  # ----------------------------------------------------  # Setup env to childs can execute myqldump  # ----------------------------------------------------  my $cmdline_mysqldump= generate_cmdline_mysqldump($master->[0]);  my $cmdline_mysqldumpslave= generate_cmdline_mysqldump($slave->[0]);  if ( $opt_debug )  {    $cmdline_mysqldump .=      " --debug=d:t:A,$path_vardir_trace/log/mysqldump-master.trace";    $cmdline_mysqldumpslave .=      " --debug=d:t:A,$path_vardir_trace/log/mysqldump-slave.trace";  }  $ENV{'MYSQL_DUMP'}= $cmdline_mysqldump;  $ENV{'MYSQL_DUMP_SLAVE'}= $cmdline_mysqldumpslave;  # ----------------------------------------------------  # Setup env so childs can execute mysqlslap  # ----------------------------------------------------  if ( $exe_mysqlslap )  {    my $cmdline_mysqlslap=      mtr_native_path($exe_mysqlslap) .      " -uroot " .      "--port=$master->[0]->{'port'} " .      "--socket=$master->[0]->{'path_sock'} --password= " .      "--lock-directory=$opt_tmpdir";    if ( $opt_debug )   {      $cmdline_mysqlslap .=	" --debug=d:t:A,$path_vardir_trace/log/mysqlslap.trace";    }    $ENV{'MYSQL_SLAP'}= $cmdline_mysqlslap;  }  # ----------------------------------------------------  # Setup env so childs can execute mysqlimport  # ----------------------------------------------------  my $cmdline_mysqlimport=    mtr_native_path($exe_mysqlimport) .    " -uroot " .    "--port=$master->[0]->{'port'} " .    "--socket=$master->[0]->{'path_sock'} --password=";  if ( $opt_debug )  {    $cmdline_mysqlimport .=      " --debug=d:t:A,$path_vardir_trace/log/mysqlimport.trace";  }  $ENV{'MYSQL_IMPORT'}= $cmdline_mysqlimport;  # ----------------------------------------------------  # Setup env so childs can execute mysqlshow  # ----------------------------------------------------  my $cmdline_mysqlshow=    mtr_native_path($exe_mysqlshow) .    " -uroot " .    "--port=$master->[0]->{'port'} " .    "--socket=$master->[0]->{'path_sock'} --password=";  if ( $opt_debug )  {    $cmdline_mysqlshow .=      " --debug=d:t:A,$path_vardir_trace/log/mysqlshow.trace";  }  $ENV{'MYSQL_SHOW'}= $cmdline_mysqlshow;  # ----------------------------------------------------  # Setup env so childs can execute mysqlbinlog  # ----------------------------------------------------  my $cmdline_mysqlbinlog=    mtr_native_path($exe_mysqlbinlog) .      " --no-defaults";  if (!$opt_extern && $mysql_version_id >= 50000 )  {    $cmdline_mysqlbinlog .=" --character-sets-dir=$path_charsetsdir";  }  if ( $opt_debug )  {    $cmdline_mysqlbinlog .=      " --debug=d:t:A,$path_vardir_trace/log/mysqlbinlog.trace";  }  $ENV{'MYSQL_BINLOG'}= $cmdline_mysqlbinlog;  # ----------------------------------------------------  # Setup env so childs can execute mysql  # ----------------------------------------------------  my $cmdline_mysql=    mtr_native_path($exe_mysql) .    " --no-defaults --host=localhost  --user=root --password= " .    "--port=$master->[0]->{'port'} " .    "--socket=$master->[0]->{'path_sock'} ".    "--character-sets-dir=$path_charsetsdir";  $ENV{'MYSQL'}= $cmdline_mysql;  # ----------------------------------------------------  # Setup env so childs can execute bug25714  # ----------------------------------------------------  $ENV{'MYSQL_BUG25714'}=  $exe_bug25714;  # ----------------------------------------------------  # Setup env so childs can execute mysql_client_test  # ----------------------------------------------------  $ENV{'MYSQL_CLIENT_TEST'}=  mysql_client_test_arguments();  # ----------------------------------------------------  # Setup env so childs can execute mysql_upgrade  # ----------------------------------------------------  if ( !$opt_extern && $mysql_version_id >= 50000 )  {    $ENV{'MYSQL_UPGRADE'}= mysql_upgrade_arguments();  }  # ----------------------------------------------------  # Setup env so childs can execute mysql_fix_system_tables  # ----------------------------------------------------  if ( !$opt_extern && ! $glob_win32 )  {    my $cmdline_mysql_fix_system_tables=      "$exe_mysql_fix_system_tables --no-defaults --host=localhost " .      "--user=root --password= " .      "--basedir=$glob_basedir --bindir=$path_client_bindir --verbose " .      "--port=$master->[0]->{'port'} " .      "--socket=$master->[0]->{'path_sock'}";    $ENV{'MYSQL_FIX_SYSTEM_TABLES'}=  $cmdline_mysql_fix_system_tables;  }  $ENV{'MYSQL_FIX_PRIVILEGE_TABLES'}=  $file_mysql_fix_privilege_tables;  # ----------------------------------------------------  # Setup env so childs can execute my_print_defaults  # ----------------------------------------------------  $ENV{'MYSQL_MY_PRINT_DEFAULTS'}= mtr_native_path($exe_my_print_defaults);  # ----------------------------------------------------  # Setup env so childs can execute mysqladmin  # ----------------------------------------------------  $ENV{'MYSQLADMIN'}= mtr_native_path($exe_mysqladmin);  # ----------------------------------------------------  # Setup env so childs can execute perror    # ----------------------------------------------------  $ENV{'MY_PERROR'}= mtr_native_path($exe_perror);  # ----------------------------------------------------  # Add the path where mysqld will find udf_example.so  # ----------------------------------------------------  $ENV{'UDF_EXAMPLE_LIB'}=    ($lib_udf_example ? basename($lib_udf_example) : "");  $ENV{'LD_LIBRARY_PATH'}=    ($lib_udf_example ?  dirname($lib_udf_example) : "") .      ($ENV

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -