Guest User

Untitled

a guest
Apr 17th, 2018
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.07 KB | None | 0 0
  1. ###########################
  2. # Script for converting #
  3. # mongoDB to mySql #
  4. # Coded by Atul Yadav #
  5. ###########################
  6.  
  7. #!/usr/bin/python
  8.  
  9. from pymongo import MongoClient
  10. import MySQLdb
  11. import unicodedata
  12.  
  13. #################################
  14. # mongoDb Server Details #
  15. #################################
  16.  
  17. mongoServer = raw_input("Enter MongoDb Server Address = ") # address of mongo server
  18. mongoPort = int(raw_input("Enter MongoDb Server Port Number = ")) # mongo port nubmer
  19. mongoDatabase = raw_input("Enter MongoDb Database Name = ") # mongo database name
  20. mongoCollectionName= mongoDatabase = raw_input("Enter MongoDb Database Collection Name = ") # mongo collection name
  21.  
  22. #################################
  23. # mySql Server Details #
  24. #################################
  25.  
  26. mySqlServer = raw_input("Enter mySql Server Address = ") # address of mySql Server
  27. mySqlUser = raw_input("Enter mySql User Name = ") # mySql User name
  28. mySqlPassword = raw_input("Enter mySql User Password = ") # mySql User password
  29. mySqlDatabase = raw_input("Enter mySql Database Name = ") # name of mySql Database
  30. mySqlTable = raw_input("Enter mySql Database Table Name = ") #name of mySql Table
  31.  
  32. #################################
  33. # Connection to mongo #
  34. #################################
  35.  
  36. print 'Trying to connect to MongoDB Server.... Please Wait...'
  37. try:
  38. mongoConnection = MongoClient(mongoServer,mongoPort)
  39. mongoDB = mongoConnection[mongoDatabase]
  40. mongoCollection = mongoDB[mongoCollectionName]
  41. if mongoConnection.server_info():
  42. print 'Establishing connection to mongoDB successful :)'
  43. else:
  44. pass
  45. except:
  46. print 'Error Connecting MongoDB. Please Check Connection Settings.'
  47.  
  48. #################################
  49. # Connection to mySql #
  50. #################################
  51. print 'Trying to connect to mySql Server.... Please Wait...'
  52. try:
  53. sqlConnection = MySQLdb.connect(mySqlServer,mySqlUser,mySqlPassword,mySqlDatabase)
  54. sqlCursor = sqlConnection.cursor()
  55. if sqlConnection.open:
  56. print 'Establishing connection to mySql Server successful :)'
  57. else:
  58. pass
  59. except:
  60. print 'Error Connecting mySql Server. Please Check Connection Settings.'
  61.  
  62. #################################
  63. # Data Dumping #
  64. #################################
  65.  
  66. print 'Dumping Mongo Data to Sql .....'
  67. try:
  68. document = mongoCollection.find()
  69. keyList = []
  70. valueList = []
  71. for details in document:
  72. del details['_id']
  73. cols = []
  74. values = []
  75. for key, value in details.items():
  76. key = key.encode('ascii')
  77. if isinstance(value,unicode):
  78. value = value.encode('ascii')
  79. cols.append(key)
  80. values.append(value)
  81. q = '''insert into profile ({}) VALUES {}''' .format(','.join(cols), tuple(values))
  82. print q
  83. sqlCursor.execute(q)
  84. sqlConnection.commit()
  85. keyList = []
  86. valueList = []
  87.  
  88. print 'Done'
  89. sqlConnection.close()
  90.  
  91. except:
  92. print 'Error Dumping Data'
  93.  
  94. #################################
  95.  
  96. print '#### Thanks for Using ####'
Add Comment
Please, Sign In to add comment