આ બ્લોગમાં આપણે કેટલીક ડેટાબેઝ સિસ્ટમો વિશે વાત કરી છે, જેમાંથી સૌથી વધુ લોકપ્રિય મારિયાડીબી અને માયએસક્યુએલ છે, કારણ કે તે સિસ્ટમો છે જેમાં સામાન્ય રીતે ઝેમ્પ અથવા લેમ્પમાં શામેલ હોય છે. આ સમયે અમે વિશે વાત કરવા જઈ રહ્યા છીએ બીજી સિસ્ટમ છે જે મોંગોડીબી.
મોંગોડીબી છે એક મુક્ત સ્રોત દસ્તાવેજ લક્ષી NoSQL ડેટાબેઝ સિસ્ટમ, આ છે ઉચ્ચ પ્રદર્શન ડેટા દ્રistenceતા માટે રચાયેલ આધુનિક દસ્તાવેજ ડેટાબેઝ મેનેજમેન્ટ સિસ્ટમ, NoSQL તકનીકની તકનીકી પર આધારિત ઉચ્ચ ઉપલબ્ધતા, તેમજ સ્વચાલિત સ્કેલિંગ.
કોષ્ટકોમાં ડેટા બચાવવાને બદલે તે સંબંધિત ડેટાબેસેસમાં કરવામાં આવે છે, મોંગોડીબી દસ્તાવેજોમાં ડેટા સ્ટ્રક્ચર્સ સાચવે છેછે, જે ક્ષેત્ર અને મૂલ્ય જોડીઓ (મોંગોડીબી દસ્તાવેજો જેએસઓન toબ્જેક્ટ્સ સાથે તુલનાત્મક છે) નો સમાવેશ કરેલો ડેટા સ્ટ્રક્ચર છે.
કારણ કે તે ઉચ્ચ પ્રદર્શન અને ઉત્તમ સ્કેલેબિલીટી લાક્ષણિકતાઓ પ્રદાન કરે છે, તેથી તેનો ઉપયોગ આધુનિક એપ્લિકેશનો બનાવવા માટે કરવામાં આવી રહ્યો છે જેને શક્તિશાળી, મિશન-જટિલ અને ખૂબ ઉપલબ્ધ ડેટાબેસેસની જરૂર છે.
ઉબુન્ટુ પર મંગોડીબી ઇન્સ્ટોલેશન
અમારા સિસ્ટમ પર આ ડેટાબેસ સિસ્ટમ ઇન્સ્ટોલ કરવા માટે, આપણે ફક્ત એક ટર્મિનલ ખોલવું પડશે અને તેમાં નીચે આપેલ આદેશ ચલાવવો પડશે:
sudo apt install mongodb
સ્થાપન, મોંગોડીબી સેવા સિસ્ટમડ દ્વારા આપમેળે શરૂ થશે અને પ્રક્રિયા 27017 બંદર પર ચાલશે. તમે આદેશની મદદથી તેની સ્થિતિ ચકાસી શકો છો:
sudo systemctl status mongodb
જો નહીં, તો આપણે આ આદેશથી શરૂઆતને દબાણ કરી શકીએ છીએ:
sudo systemctl start mongodb
મoંગોડીબી સાથે રિમોટ કનેક્શન્સ સક્ષમ કરવું
ડિફોલ્ટ રૂપે મંગોડીબી ડેટાબેઝ સિસ્ટમ પોર્ટ 27017 નો ઉપયોગ કરે છે જેને આપણે ખોલવું જોઈએ રિમોટ કનેક્શંસ સ્વીકારવા માટે, અમે તેને ફક્ત નીચેના આદેશથી સક્ષમ કરીએ છીએ.
sudo ufw allow 27017
ડિફ defaultલ્ટ રૂપે, પોર્ટ 27017 ફક્ત સ્થાનિક સરનામાંથી જ વાપરી શકાય છે 127.0.0.1. મoંગોડીબીમાં રિમોટ કનેક્શન્સને મંજૂરી આપવા માટે, ફાઇલમાં સર્વરનું આઇપી સરનામું ઉમેરવું જરૂરી છે /etc/mongodb.conf
ફક્ત તેને આ સાથે સંપાદિત કરો:
sudo nano
અને આપણે આના જેવું કંઈક જોઈ શકીએ છીએ:
bind_ip = 127.0.0.1, your_server_ip #port = 27,017
જેને આપણે આપણા સર્વરના ડેટા સાથે સંપાદિત કરીએ છીએ.
મોંગોડીબીને બધેથી accessક્સેસની મંજૂરી, તે ડેટાબેસમાં ડેટાને પ્રતિબંધિત accessક્સેસ આપે છે. તેથી, મોંગોડીબી પોર્ટના સ્થાન-વિશિષ્ટ ડિફોલ્ટ આઇપી સરનામાંને giveક્સેસ આપવાનું વધુ સારું છે.
sudo ufw allow from your_server_IP/32 to any port 27017 sudo ufw status
એકવાર આ થઈ ગયા પછી, સેવાને ફરીથી પ્રારંભ કરવા માટે તે પૂરતું છે કે જેથી નવા ફેરફારો શરૂઆતમાં લોડ થાય, આ અમે આ સાથે કરીએ છીએ:
sudo systemctl restart mongodb
પાસવર્ડ સાથે મોન્ગોડીબીમાં વપરાશકર્તા બનાવો
ડિફ defaultલ્ટ રૂપે ડેટાબેઝમાં એકદમ સરળ hasક્સેસ હોય છે, તેથી આને મજબુત બનાવવા માટે આપણે પાસવર્ડ સાથે વપરાશકર્તા બનાવી શકીએ છીએ.
મોંગોડીબી એસસીઆરએએમ ઓથેન્ટિકેશન મિકેનિઝમનો ઉપયોગ કરે છે મૂળભૂત રીતે. સિસ્ટમ પર એસસીઆરએએમએએમનો ઉપયોગ કરવાથી વપરાશકર્તા નામ, પાસવર્ડ અને પ્રમાણીકરણ ડેટાબેઝ સામે પૂરા પાડવામાં આવેલ વપરાશકર્તા ઓળખપત્રોની ખાતરી થાય છે.
ફક્ત નીચેના આદેશથી ડેટાબેસ કન્સોલ પ્રારંભ કરો:
Mongo
અમે આ સાથે હાલના ડેટાબેસેસની સૂચિ બનાવી શકીએ:
show dbs
અમે એક વપરાશકર્તા બનાવી શકીએ છીએ જે અમને વપરાશકર્તાઓ અને કાર્યોને સંચાલિત કરવાની મંજૂરી આપશે જેમ કે વપરાશકર્તાઓ બનાવવા, વપરાશકર્તા ભૂમિકાઓ આપવી અથવા રદ કરવી, અને કસ્ટમ્સ ભૂમિકાઓ બનાવવા અથવા સંશોધિત કરવી.
ફક્ત ટાઇપ કરો
use admin
અને આપણે નીચેના આદેશ સાથે વપરાશકર્તા બનાવીએ છીએ, જ્યાં આપણે વપરાશકર્તાના નામ "રુટ" અને પાસવર્ડ "પાસવર્ડ" ને replaceક્સેસ ક્રિસેન્સિયલ્સ દ્વારા બદલીએ છીએ, જેને આપણે યોગ્ય માનીએ છીએ.
db.createUser({user:"root", pwd:"password", roles:[{role:"root", db:"admin"}]})
એકવાર આ થઈ જાય, પછી આપણે સત્તાધિકરણ પદ્ધતિને સક્ષમ કરવી આવશ્યક છે આ માટે આપણે નીચેની ફાઇલને સંપાદિત કરીશું:
sudo nano /lib/systemd/system/mongodb.service
અને આપણે આગળની લાઈન શોધીશું:
ExecStart=/usr/bin/mongod --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS
અને સંપાદિત કરો જેથી તે નીચે મુજબ છે:
ExecStart=/usr/bin/mongod --auth --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS
હવે આપણે ડેટાબેઝમાં ખાલી રીબૂટ કરીશું
systemctl daemon-reload sudo systemctl restart mongodb sudo systemctl status mongodb
Y અમે આ સાથે પ્રમાણીકરણ પદ્ધતિની પરીક્ષણ કરીએ છીએ:
mongo -u "usuario" -p --authenticationDatabase "contraseña"
આ ભૂલ સાથે મને સહાય કરો.
2021-03-24T21: 33: 16.233 +0000 E QUERY [થ્રેડ 1] ભૂલ: સૂચિ ડેટાબેસેસ નિષ્ફળ: {
«»કે 0: XNUMX,
"એરર્મ્સગ": "આદેશ admin listDat ડેટાબેસેસ: 1.0, $ db: admin" એડમિન \ "}" ચલાવવા માટે એડમિન પર અધિકૃત નથી,
"કોડ": 13,
"કોડનામ": "અનધિકૃત"
}:
_getErrorWithCode@src/mongo/shell/utils.js: 25:13
મોન્ગો.પ્રોટોટાઇપ.ગેટબીબીએસએસસીઆર / મોન્ગો / શેલ/ મોંગો.જેએસ: 65: 1
શેલહેલ્પર.શow@src/mongo/ Shell/utils.js: 816: 19
શેલહેલ્પર@src/mongo/shell/utils.js: 706: 15
@ (શેલહેલ્પ 2): 1: 1