மோங்கோடிபியை கோலாங்குடன் இணைப்பது எப்படி

Monkotipiyai Kolankutan Inaippatu Eppati



சி மொழியைப் போலவே, கோலாங் மொழியும் ஒரு திறந்த மூல மொழியாகும், இது பதிவுகளை உருவாக்க Windows மற்றும் Linux/Unix கணினிகளில் பல கருவிகளில் செயல்படுத்தப்படலாம். C++ மற்றும் Java போன்று, MongoDB கிளையன்ட் சிஸ்டம் மற்றும் Go மொழிக்கு இடையே எந்த கோலாங் கருவியையும் பயன்படுத்தி ஒரு இணைப்பை ஏற்படுத்தலாம். இதைச் செய்ய, ஒரு நிரலுக்கு விஷுவல் ஸ்டுடியோ குறியீடு கருவியைப் பயன்படுத்தி உபுண்டு 22.04 இல் பல முக்கியமான மற்றும் தேவையான படிகளைச் செய்வோம். MongoDB திசைகாட்டியுடன் தொடர்பை ஏற்படுத்துவதற்கு முன், Go மொழியில் உங்களுக்கு உதவ வழிகாட்டியில் 'go' மற்றும் தேவையான நீட்டிப்புகளுடன் MongoDB மற்றும் விஷுவல் ஸ்டுடியோ குறியீட்டை நிறுவ முனைகிறோம்.

மோங்கோடிபியை நிறுவவும்

மோங்கோடிபி சேவையகத்தின் “டெப்” தொகுப்பை அதன் அதிகாரப்பூர்வ இணையதளத்தில் இருந்து பதிவிறக்கம் செய்துள்ளோம். டெர்மினலில் உள்ள “dpkg” கட்டளைக் கருவியைப் பயன்படுத்தி உபுண்டுவில் “டெப்” தொகுப்பையும் செயல்படுத்தலாம்.







மோங்கோடிபி சர்வர் கோப்பை டெர்மினலில் 'சூடோ' உரிமைகளுடன் செயல்படுத்தி கடவுக்குறியீட்டை வழங்கியது.



saeedraza@virtualbox:~$ சூடோ dpkg -நான் mongodb-org-server_6.0.3_amd64.deb


உபுண்டுவின் 'systemctl' அறிவுறுத்தலைப் பயன்படுத்தி அதன் நிலையைச் சரிபார்க்க முயற்சித்த பிறகு, உங்கள் முடிவில் MongoDB சேவை செயலற்றதாகக் காணப்பட்டால், அதையும் புதுப்பிக்கலாம். மோங்கோடிபியை செயல்படுத்த, 'தொடக்கம்' மற்றும் 'இயக்கு' முக்கிய வார்த்தைகளுடன் systemctl வழிமுறைகளை முயற்சிக்கவும்.

saeedraza@virtualbox:~$ சூடோ systemctl தொடக்கம் mongod
saeedraza@virtualbox:~$ சூடோ systemctl செயல்படுத்த மோங்கோட்
saeedraza@virtualbox:~$ சூடோ systemctl நிலை மோங்கோட்

மோங்கோடிபியை இயக்கவும்

நிறுவிய பின், 'மோங்கோ' வினவலைப் பயன்படுத்தி MongoDb ஷெல்லை விரைவாகத் தொடங்கவும். தொடரும் படிகளைச் செய்ய 'நிர்வாகம்' தரவுத்தளத்திற்கு மாறவும்.

saeedraza@virtualbox:~$ மோங்கோ
மோங்கோடிபி ஷெல் பதிப்பு v5.0.14
இணைக்கிறது: mongodb: // 127.0.0.1: 27017 / ? அமுக்கிகள் = ஊனமுற்றவர் & gssapiServiceபெயர் = mongodb
மறைமுக அமர்வு: அமர்வு { 'ஐடி' : UUID ( '34cc8e0f-b6b0-4191-adea-676411f66cf5' ) }
மோங்கோடிபி சர்வர் பதிப்பு: 6.0.3


createUser() செயல்பாட்டைப் பயன்படுத்தி நிர்வாக உரிமைகளுடன் புதிய பயனரை உருவாக்குகிறோம்.

> நிர்வாகியைப் பயன்படுத்தவும்
db நிர்வாகிக்கு மாறினார்
> db.createUser (
... {
... பயனர்: 'சயீத்' ,
... pwd: '12345' ,
... பாத்திரங்கள்: [ { பங்கு: 'userAdminAnyDatabase' , db: 'நிர்வாகம்' } , 'ReadWriteAnyDatabase' ]

... } )
பயனர் வெற்றிகரமாக சேர்க்கப்பட்டார்: {
'பயனர்' : 'சயீத்' ,
'பாத்திரங்கள்' : [
{
'பாத்திரம்' : 'userAdminAnyDatabase' ,
'db' : 'நிர்வாகம்'
} ,
'ReadWriteAnyDatabase'
]
}


“அங்கீகாரம்” செயல்பாட்டில் உள்ள நற்சான்றிதழ்களைப் பயன்படுத்தி “சயீத்” பயனரை அங்கீகரித்தது மற்றும் MongoDB இன் தற்போது சொந்தமான தரவுத்தளங்களைக் காட்டுகிறது.

> db.auth ( 'சயீத்' , '12345' )
ஒன்று
> dbs காட்டு
நிர்வாகி   0.000 ஜிபி
config  0.000GB
உள்ளூர் 0.000ஜிபி

கோலாங்கிற்கு மோங்கோடிபி டிரைவரை நிறுவவும்

விஷுவல் ஸ்டுடியோ குறியீட்டில் முனையத்தைத் திறந்து, உங்கள் மூலக் குறியீடு கோப்புகளைச் சேர்க்க விரும்பும் 'கோலாங்' கோப்புறைக்குள் செல்லவும். 'go.mod' கோப்பை உருவாக்க கோப்புறை பெயருடன் 'go mod init' வழிமுறையை இயக்கவும். 'go get' வினவல் மூலம் Go மொழிக்கான MongoDB இயக்கியை ஏற்றவும்.

saeedraza@virtualbox:~/Golang$ கோ mod init Golang


சில சந்தர்ப்பங்களில், கோலாங்கிற்கும் மோங்கோடிபி இயக்கியின் bson வடிவத்தை ஏற்ற வேண்டும்.

saeedraza@virtualbox:~/Golang$ சென்று go.mongodb.org / மோங்கோ ஓட்டுனர் / bson


எந்த அறிவுறுத்தலும் இல்லாமல் நீட்டிப்புகள் பேனலைப் பயன்படுத்தி விஷுவல் ஸ்டுடியோ குறியீட்டில் 'gopls' போன்ற தேவையான நீட்டிப்பு தொகுப்புகளைச் சேர்ப்பதை உறுதிசெய்யவும்.


'gopls' உடன், Golang க்கு 'dlv' கருவி கண்டிப்பாக நிறுவப்பட வேண்டும்.

கோயிங் குறியீடு உதாரணம்

'main.go' என்ற குறியீட்டு கோப்பு சில பயனுள்ள தொகுப்புகளின் இறக்குமதியுடன் தொடங்கப்பட்டது, இது முழு குறியீட்டிலும் இணைப்பிற்காக பயன்படுத்தப்படும். இங்கு மொத்தம் 7 இறக்குமதிகள் செய்யப்பட்டுள்ளன. தொகுப்புகளை இறக்குமதி செய்த பிறகு, 4 JSON வகை தரவு உறுப்பினர்களுடன் மோங்கோஃபீல்ட் என்ற புதிய கட்டமைப்பை உருவாக்கினோம். இந்த தரவு உறுப்பினர்களில் 2 சரங்கள் மற்றும் அவற்றில் 2 முழு எண்கள்.

இதற்குப் பிறகு, ஒரு கிளையன்ட் முகவரியுடன் நிலையான வகை மாறி “uri” அறிவிக்கப்பட்டது அல்லது பயனர்பெயர் மற்றும் கடவுச்சொல்லின் படி அதில் உங்கள் லோக்கல் ஹோஸ்ட் முகவரியைச் சேர்க்க வேண்டும். 'மோங்கோ' பொருளின் மூலம் மோங்கோடிபியுடன் இணைக்க கோலாங்கின் கனெக்ட்() செயல்பாட்டைப் பயன்படுத்துவதன் மூலம் பிரதான() செயல்பாடுகள் தொடங்குகின்றன. ApplyURI() செயல்பாடு கிளையண்ட்() செயல்பாட்டில் பயன்படுத்துவதற்கு 'uri' மாறியை அதன் வாதமாக எடுத்துக் கொள்ளும், இதனால் ஹோஸ்ட் முகவரி மூலம் இணைப்பை நிறுவ முடியும். ஒரு இணைப்பைக் கோருவதற்கு TODO() செயல்பாட்டை அழைப்பதில் சூழல் தொகுப்பு முக்கியப் பங்கு வகிக்கிறது. விஷுவல் ஸ்டுடியோ குறியீடு மற்றும் மோங்கோடிபி இடையே இணைப்பு வெற்றிகரமாக நிறுவப்பட்டால், கிளையன்ட் திரும்பிய சிக்னல் 'கிளையன்ட்' மாறியில் சேர்க்கப்படும்; இல்லையெனில், பிழை 'err' என்ற மாறியில் சேமிக்கப்படும்.

அதற்கேற்ப செய்திகளைக் காட்ட “if” அறிக்கை இங்கே உள்ளது. “err” மாறியானது “nil” என்பதைத் தவிர வேறு மதிப்பைப் பெற்றிருந்தால், “fmt” என்ற வடிவமைப்பு தொகுப்பிலிருந்து Println() செயல்பாடு அந்த பிழையை வெளியீட்டுத் திரையில், முனையத்தில் அச்சிடும். பிழை ஏற்பட்டால் நிரலிலிருந்து வெளியேற 'os' தொகுப்பு பயன்படுத்தப்படும். இந்த திட்டத்தின் மூலம் இணைப்பு நிறுவப்படுவதற்கான காலக்கெடுவை நிர்வகிக்க சூழல் தொகுப்பு மீண்டும் இங்கு பயன்படுத்தப்படுகிறது. குறிப்பிட்ட காலக்கெடு மதிப்பு 'ctx' க்கு, எங்கள் நிரல் செயல்படுத்தப்படும். கோலாங் மூலம் மோங்கோடிபி கிளையண்டில் புதிய தரவுத்தளத்துடன் 'புதிய' என்ற புதிய தொகுப்பு 'நபர்' உருவாக்கப்படும். Println() ஆனது பிரதிபலிப்பு தொகுப்பிலிருந்து 'TypeOf' செயல்பாட்டைப் பயன்படுத்தி 'c' சேகரிப்பின் வகையைக் காண்பிக்கும்.

மோங்கோஃபீல்ட் தரவு உறுப்பினர்களின் கட்டமைப்பைப் பயன்படுத்தி “ரெக்” பதிவு உருவாக்கப்பட்டது, அவை ஒவ்வொன்றாக இங்கே துவக்கப்படுகின்றன. பதிவு வகை காட்டப்பட்டது மற்றும் சேகரிப்பு பொருளான 'c' உடன் insertOne செயல்பாட்டைப் பயன்படுத்தி 'Rec' பதிவு கிளையண்ட் MongoDB இல் செருகப்படும். வெற்றிகரமான செருகல் வெற்றி மதிப்பை வைத்திருக்கும் 'முடிவு' மாறிக்கு வழிவகுக்கிறது, அதே நேரத்தில் 'insertErr' மாறி தோல்வி மதிப்பை வைத்திருக்கும். 'insertErr' மாறி 'nil' மதிப்பைத் தவிர வேறு வைத்திருந்தால் மட்டுமே பதிவைச் செருகுவதில் உள்ள பிழையைச் சரிபார்த்து காண்பிக்க 'if' அறிக்கை மீண்டும் பயன்படுத்தப்படுகிறது. இல்லையெனில், அறிக்கையின் 'மற்றவை' பகுதியானது, செருகப்பட வேண்டிய பதிவின் வகை, பதிவு ஐடி மற்றும் இணைப்பு மற்றும் செருகுதலுக்கான வெற்றிச் செய்தி ஆகியவற்றைக் காண்பிக்க சில Println() அறிக்கைகளை வைத்திருக்கும். கோலாங் குறியீடு இப்போது முடிந்தது.

முக்கிய தொகுப்பு
இறக்குமதி (
'சூழல்'
'fmt'
'நீ'
'பிரதிபலிப்பு'
'நேரம்'
'go.mongodb.org/mongo-driver/mongo'
'go.mongodb.org/mongo-driver/mongo/options'
)
வகை மோங்கோஃபீல்ட் அமைப்பு {
பெயர்   சரம் ` json: 'ஃபீல்ட் ஸ்ட்ரா' `
மின்னஞ்சல் சரம் ` json: 'ஃபீல்ட் ஸ்ட்ரா' `
வயது எண் ` json: 'ஃபீல்ட் இன்ட்' `
சம்பளம் int ` json: 'ஃபீல்ட் இன்ட்' `
}
const uri = 'mongodb: // பயனர்:கடவுச்சொல் @ லோக்கல் ஹோஸ்ட்: 27017 / ? maxPoolSize = இருபது & உள்ளே =பெரும்பான்மை'
முக்கிய செயல்பாடு ( ) {
வாடிக்கையாளர், பிழை := மோங்கோ. இணைக்கவும் ( சூழல்.எல்லாம் ( ) ,விருப்பங்கள்.வாடிக்கையாளர் ( ) .ApplyURI ( வகை ) )
என்றால் தவறு ! = பூஜ்யம் {
fmt.Println ( 'Mongo.connect() பிழை: ' , தவறு )
os. வெளியேறு ( ஒன்று )
}
ctx, _ := சூழல்.நேரமுடிவுடன் ( சூழல்.பின்னணி ( ) , பதினைந்து * நேரம்.இரண்டாவது )
c := கிளையன்ட். டேட்டாபேஸ் ( 'புதிய' ) .சேகரிப்பு ( 'நபர்' )
fmt.Println ( 'சேகரிப்பு வகை:' , பிரதிபலிக்கும்.TypeOf ( c ) , ' \n ' )
Rec := மோங்கோஃபீல்ட் {
பெயர்: 'ஈடன்' ,
மின்னஞ்சல்: 'eden@gmail.com' ,
வயது: நான்கு. ஐந்து ,
சம்பளம்: 50000 }
fmt.Println ( 'பதிவு வகை:' , பிரதிபலிக்கும்.TypeOf ( ரெக் ) , ' \n ' )
முடிவு, insertErr := c.InsertOne ( ctx, Rec )
என்றால் insertErr ! = பூஜ்யம் {
fmt.Println ( 'InsertOne பிழை:' , insertErr )
os. வெளியேறு ( ஒன்று )
} வேறு {
fmt.Println ( 'InsertOne முடிவு வகை:' , பிரதிபலிக்கும்.TypeOf ( விளைவாக ) )
newID = result.InsertedID
fmt.Println ( 'பதிவு ஐடி செருகப்பட்டது:' , புதிய ஐடி ) )
fmt.Println ( 'பதிவுகள் வெற்றிகரமாக இணைக்கப்பட்டது மற்றும் செருகப்பட்டது!' )
} }


கோலாங் குறியீட்டைச் சேமித்து, கோலாங் கோப்புறையில் முனையத்தைத் திறக்கவும். இப்போது, ​​'main.go' குறியீட்டு கோப்பை இயக்க, 'ரன்' முக்கிய வார்த்தையுடன் 'go' வழிமுறையைப் பயன்படுத்தவும். பிழைத்திருத்தம் வெற்றிகரமாக இருந்தது மற்றும் மோங்கோடிபியில் 'நபர்' சேகரிப்பு வெற்றிகரமாக உருவாக்கப்பட்டுள்ளது. வெளியீடு சேகரிப்பு வகை, பதிவு வகை, முடிவு வகை மற்றும் பதிவின் 'ஐடி' ஆகியவற்றைக் காட்டுகிறது.

saeedraza @ மெய்நிகர் பெட்டி:~ / Golang$ Go Run Main.go
சேகரிப்பு வகை: * மோங்கோ.சேகரிப்பு
பதிவு வகை: main.MongoField
InsertOne முடிவு வகை: * மோங்கோ.InsertOneResult
பதிவு ஐடி செருகப்பட்டது: ObjectID ( “63a8535ac97b4218230664b6” )
வெற்றிகரமாக இணைக்கப்பட்டு பதிவுகள் செருகப்பட்டன.


உங்கள் முடிவில் 'MongoDB' திசைகாட்டியைத் திறந்து, 'URI' ஐப் பயன்படுத்தி அதன் உள்ளூர் ஹோஸ்டுடன் இணைக்கவும்.


'புதிய' தரவுத்தளத்திற்குள் சென்ற பிறகு, நாங்கள் சேர்த்த பதிவோடு 'ஆவணங்கள்' பிரிவில் 'நபர்' சேகரிப்பு காட்டப்படும்.

முடிவுரை

லினக்ஸ் அமைப்பில் விஷுவல் ஸ்டுடியோ கோட் கருவியைப் பயன்படுத்தி மோங்கோடிபி கிளையண்டில் பதிவுகளைச் சேர்க்க Go மொழியின் பயன்பாட்டை இந்த வழிகாட்டி விளக்குகிறது. இதற்காக, கணினியில் 'golang' க்கான mongodb இயக்கியுடன் mongodb ஐ நிறுவியுள்ளோம். கோலாங் மொழியைப் பயன்படுத்தி, மோங்கோடிபியில் ஒரு “கோ” கோப்பை உருவாக்கி, மோங்கோடிபியுடன் இணைப்பை உருவாக்கவும், பதிவுகளைச் செருகவும் கோலாங்கின் பல்வேறு தொகுப்புகள் மற்றும் செயல்பாடுகளைப் பற்றி விவாதித்தோம். முடிவில், MongoDB திசைகாட்டியில் முடிவுகளை நாங்கள் நிரூபித்துள்ளோம், இது நீங்கள் எந்த Golang கருவியையும் MongoDB உடன் இணைக்க முடியும் என்பதைக் காட்டுகிறது.