网站地图    收藏   

主页 > 系统 > linux系统 >

linux中mydumper需要输入明文密码解决方案 - linux教

来源:自学PHP网    时间:2014-11-28 23:06 作者: 阅读:

[导读] 下面来给各位介绍一下关于linux中mydumper需要输入明文密码解决方案,希望能帮助到各位同学.在使用mydumper时,需要再命令行中输入用户名和密码,这会记录到history中,这样的话,就是相对不安...

linux中mydumper需要输入明文密码解决方案

下面来给各位介绍一下关于linux中mydumper需要输入明文密码解决方案,希望能帮助到各位同学.

在使用mydumper时,需要再命令行中输入用户名和密码,这会记录到history中,这样的话,就是相对不安全.

[root@liufofu backup]# mydumper -h localhost -u root -p tiger -c -o ./liufofu/ -B liufofu

查了下官方提供的解决方案有2种:

1、在homedir中新建一个.my.cfg,输入你的用户和密码

2、打上相应的补丁

具体可以参考官方的回复:

  1. 1. Use ~/.my.cfg with your login and password to authenticate. It will both not save password in bash history and hide password if ps list, but you’ll have to keep plaintext password in your homedir. 
  2. 2. Try this patch 
  3. commit 056fa3edc2a3880d35986d6f123430fde5fe292a 
  4. Author: Dmitry Ilyin <email address hidden> 
  5. Date: Sat Oct 27 02:10:40 2012 +0400 
  6. Add cmdline mask for mydumper 
  7. diff –git a/mydumper.c b/mydumper.c 
  8. index 9c37d39..39edff1 100644 
  9. — a/mydumper.c 
  10. +++ b/mydumper.c 
  11. @@ -367,6 +367,15 @@ int main(int argc, char *argv[]) 
  12. init_mutex = g_mutex_new(); 
  13. + //calculate cmdlen 
  14. int cmdlen = 0; 
  15. int argn = 0; 
  16. for (argn = 0; argn < argc; ++argn) { 
  17. + cmdlen += (int) strlen(argv[argn]); 
  18. + } 
  19. + cmdlen = cmdlen + argc – 1; 
  20. context = g_option_context_new(“multi-threaded MySQL dumping”); 
  21.  GOptionGroup *main_group= g_option_group_new(“main”, “Main Options”, “Main Options”, NULLNULL); 
  22.  g_option_group_add_entries(main_group, entries); 
  23. @@ -377,6 +386,11 @@ int main(int argc, char *argv[]) 
  24.          exit (EXIT_FAILURE); 
  25.  g_option_context_free(context); 
  26. + //erase cmdline 
  27. + memset(argv[0],’\0′,cmdlen); 
  28. + //set new cmdline 
  29. + sprintf(argv[0],”mydumper: dumping database ‘%s’”,db); 
  30. if (program_version) { 
  31.          g_print(“mydumper %s, built against MySQL %s\n”, VERSION, MYSQL_SERVER_VERSION); 
  32. ——- 
  33. and this for my loader 
  34. ——- 
  35. commit f8f9850045a317b927903482317ee32ecce47eea 
  36. Author: Dmitry Ilyin <email address hidden> 
  37. Date: Sat Oct 27 02:24:33 2012 +0400 
  38. Add cmdline mask for myloader 
  39. diff –git a/myloader.c b/myloader.c 
  40. index 7697e97..a38b4fd 100644 
  41. — a/myloader.c 
  42. +++ b/myloader.c 
  43. @@ -93,6 +93,15 @@ int main(int argc, char *argv[]) { 
  44. init_mutex= g_mutex_new(); 
  45. + //calculate cmdlen 
  46. int cmdlen = 0; 
  47. int argn = 0; 
  48. for (argn = 0; argn < argc; ++argn) { 
  49. + cmdlen += (int) strlen(argv[argn]); 
  50. + } 
  51. + cmdlen = cmdlen + argc – 1; 
  52. context= g_option_context_new(“multi-threaded MySQL loader”); 
  53.  GOptionGroup *main_group= g_option_group_new(“main”, “Main Options”, “Main Options”, NULLNULL); 
  54.  g_option_group_add_entries(main_group, entries); 
  55. @@ -104,6 +113,11 @@ int main(int argc, char *argv[]) { 
  56.  g_option_context_free(context); 
  57. + //erase cmdline 
  58. + memset(argv[0],’\0′,cmdlen); 
  59. + //set new cmdline 
  60. + sprintf(argv[0],”myloader: loading from directory ‘%s’”,directory); 
  61. +  --phpfensi.com 
  62. if (program_version) { 
  63.          g_print(“myloader %s, built against MySQL %s\n”, VERSION, MYSQL_SERVER_VERSION); 
  64.          exit(EXIT_SUCCESS); 
  65. —- 
  66. They hide password and other arguments from ps list

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论