এমএস এসকিউএল সার্ভার ম্যানেজমেন্ট স্টুডিও ব্যবহার না করে কীভাবে আমি এসকিউএল সার্ভারে আমার ডিফল্ট ডাটাবেস পরিবর্তন করতে পারি?


166

আমি এসকিউএল সার্ভার থেকে একটি ডাটাবেস ফেলেছি, তবে দেখা যাচ্ছে যে আমার লগইনটি বাদ দেওয়া ডাটাবেসটিকে তার ডিফল্ট হিসাবে ব্যবহার করার জন্য সেট করা হয়েছিল। সংযোগ কথোপকথনে 'অপশনগুলি' বোতামটি ব্যবহার করে এবং সংযুক্ত হওয়ার জন্য ডাটাবেস হিসাবে 'মাস্টার' নির্বাচন করে আমি এসকিউএল সার্ভার ম্যানেজমেন্ট স্টুডিওতে সংযোগ করতে পারি। তবে, যখনই আমি অবজেক্ট এক্সপ্লোরারে কিছু করার চেষ্টা করি, এটি আমার ডিফল্ট ডাটাবেস ব্যবহার করে সংযোগ দেওয়ার চেষ্টা করে এবং ব্যর্থ হয়।

কেউ কী কীভাবে অবজেক্ট এক্সপ্লোরার ব্যবহার না করে আমার ডিফল্ট ডাটাবেস সেট করবেন ?

উত্তর:


38

Sp_defaultdb এর বিকল্প (যা মাইক্রোসফ্ট এসকিউএল সার্ভারের ভবিষ্যতের সংস্করণে সরানো হবে ) হতে পারে ALTER LOGIN:

ALTER LOGIN [my_user_name] WITH DEFAULT_DATABASE = [new_default_database]

দ্রষ্টব্য: sp_defaultdbসমাধান ব্যবহারকারীর এবং ডাটাবেসের নামগুলির বিপরীতে কোট ছাড়াই সরবরাহ করা হয়। যদি নামের বিশেষ অক্ষর থাকে তবে বন্ধনীর প্রয়োজন হয় (সর্বাধিক সাধারণ উদাহরণ ডোমেন ব্যবহারকারী যা ডোমেন-ব্যবহারকারীর নাম এবং বন্ধনীগুলি ছাড়া কাজ করবে না)।


1
আচ্ছা এই প্রশ্নটি এখন কিছুটা পুরানো হচ্ছে। যে সময় আমি এসকিউএল 2005 ব্যবহার করছিলাম Al ২০০৮ সংস্করণ না হওয়া পর্যন্ত অল্টার লগইন যুক্ত করা হয়নি।
মার্টিন ব্রাউন

@ মার্টিনব্রাউন হ্যাঁ, আমি বহু sp_deafultdbযুগ ধরে ব্যবহার করে আসছি । আমি অবাক হয়েছি যে একটি "নতুন" উপায় আছে।
মারেক

দ্রষ্টব্য: my_user_name বা ডাটাবেস ক্ষেত্রগুলির চারপাশে একক উদ্ধৃতিগুলির প্রয়োজন নেই এবং একটি ত্রুটির কারণ হতে পারে। অভিজ্ঞ হাতগুলিতে অস্পষ্ট তবে মাঝে মাঝে এটি করা লোকদের পক্ষে তা সম্ভবত নয়। স্কোয়ার ব্র্যাকেটগুলি alচ্ছিক, ক্ষেত্রগুলি সুস্পষ্ট পাঠের প্রতিনিধিত্ব করে।
আইকোভিন্স

আমি একটি গ্রুপের মাধ্যমে প্রোড ডেটাবেসে সংযোগ করি, তাই সার্ভারে আমার কোনও পৃথক লগইন নেই, যখন উপরেরটি চালানোর চেষ্টা করি তখন আমি "DOMAIN login myuser 'লগইনটি পরিবর্তন করতে পারি না, কারণ এটি বিদ্যমান নেই বা আপনি অনুমতি নেই। " এর চেয়েও খারাপ আমি একাধিক গ্রুপে রয়েছি কারণ প্রত্যেকে আমাকে সার্ভারে থাকা অনেক ডিবিতে একটিতে নির্দিষ্ট অ্যাক্সেস দেয়। পরামর্শ?
মাতানো

1
লগইনের ডিফল্ট ডাটাবেসটি কী তা সন্ধান করতে: নাম নির্বাচন করুন, সিএস.সরভার_প্রিন্টিকালগুলি থেকে ডিফল্ট_ডেটাব্যাস_নাম নির্বাচন করুন;
ডকোক

215

আপনি যা করতে পারেন তা হল sp_defaultdb সিস্টেম সঞ্চিত পদ্ধতি ব্যবহার করে আপনার ডিফল্ট ডাটাবেস সেট করা। আপনি যেমন করেছেন তেমন লগ ইন করুন এবং তারপরে নিউ ক্যোয়ারী বোতামটি ক্লিক করুন। এরপরে sp_defaultdb কমান্ডটি নিম্নরূপভাবে চালান:

Exec sp_defaultdb @loginame='login', @defdb='master' 

ধন্যবাদ প্রকৃতপক্ষে. কবজির মতো কাজ করেছেন (এবং আমাকে ডিবি নির্দিষ্ট করার জন্য 'বিকল্পগুলি' কথোপকথন সম্পর্কে শিখিয়েছিলেন)।
পেন্ডেরি

এই প্রশ্নের একটি প্রশ্ন তুলেছে মেটা
আবেল

1
আপনি কোনও AD গ্রুপে থাকলে এতটা ভাল কাজ করে না এবং আপনি কয়েক ডজন অন্যান্য বিকাশকারীর জন্য ডিফল্ট ডাটাবেস পরিবর্তন করতে চান না।
ডেকে

@ ডক: তবে আমি ধরে নেব যে আপনার লগইনটি যদি এইভাবে ভেঙে যায় তবে অন্য সমস্ত বিকাশকারীও এখানে আছেন। সুতরাং তাদের সবার জন্য এটি ঠিক করা অবশ্যই ভাল জিনিস হবে?
মার্টিন ব্রাউন

ঠিক আছে, এই বিশেষ এসকিউএল সার্ভারের উদাহরণটিতে এক ডজন বিভিন্ন ডাটাবেস রয়েছে। আমরা সবাই একটি আলাদা ডিফল্ট ডাটাবেস চাই। যদি আমরা প্রতিটি ডাটাবেসের জন্য পৃথক ব্যবহারকারী গোষ্ঠী তৈরি করি যাতে এটির কাঙ্ক্ষিত ডিফল্ট ডাটাবেস থাকতে পারে, তবে আমরা যদি আলাদা আলাদা ডাটাবেস দেখতে চাইতাম তবে আমরা সকলেই বিভিন্ন ব্যবহারকারী গোষ্ঠীতে থাকব এবং তারপরে আমরা পছন্দসই ডিফল্টটি হারাব। আমি ইচ্ছা করি ম্যানেজমেন্ট স্টুডিওতে কোনও ডিফল্ট ডাটাবেস ঠিক করার কোনও উপায় ছিল তবে আমি এখনও এমন কোনও পদ্ধতির সন্ধান পাইনি যা বাস্তবে কার্যকর হয়।
ডেকে দিন

49

এটি জিইউআই উপায়ে করতে আপনার লগইন সম্পাদনা করতে হবে। এর অন্যতম বৈশিষ্ট্য হ'ল লগইনের জন্য ব্যবহৃত ডিফল্ট ডাটাবেস। আপনি সুরক্ষা নোডের অধীনে লগইন নোডের নীচে লগইনের তালিকাটি সন্ধান করতে পারেন। তারপরে আপনার লগইনটি নির্বাচন করুন এবং ডান-ক্লিক করুন এবং বৈশিষ্ট্যগুলি চয়ন করুন। ডিফল্ট ডাটাবেস পরিবর্তন করুন এবং আপনার জীবন আরও ভাল হবে!

মনে রাখবেন যে সিসাদমিন বেসরকারী ব্যক্তির এটি করতে লগইন করতে বা পূর্ববর্তী পোস্ট থেকে ক্যোয়ারী চালাতে হবে।


এটি ঠিক কাজ করে! সেখানে "ডিফল্ট" পরিবর্তে "মাস্টার" ডিবি টাইপ করেছেন।
সমৃদ্ধ করুন

1
আমার যে সমস্যাটি ছিল তা হচ্ছিল আমি সিসাদমিন এবং আমি যে ডাটাবেসটিকে ডিফল্ট হিসাবে সেট করেছিলাম তা মুছে ফেলেছিলাম এবং যেমন এই ডায়ালগটি পেতেও পারিনি।
মার্টিন ব্রাউন

@ মার্টিনব্রাউন হোন যে যেমন হতে পারে, আমি কোনও টেবিল বাদ দিইনি এবং আমি এখনও আপনার প্রশ্নে পৌঁছেছি, তবে জিইউআই সমাধানের সাথে আরও স্বাচ্ছন্দ্য বোধ করেছি।
ডিজেভি

41

এই পোস্টে ধন্যবাদ , আমি একটি সহজ উত্তর পেয়েছি:

  1. এসকিএল সার্ভার ম্যানেজমেন্ট স্টুডিও খুলুন

  2. এক্সপ্লোরার -> সুরক্ষা -> লগইনগুলিতে যান

  3. লগইনে ডান ক্লিক করুন এবং বৈশিষ্ট্য নির্বাচন করুন

  4. এবং বৈশিষ্ট্য উইন্ডোতে ডিফল্ট ডাটাবেস পরিবর্তন এবং ঠিক আছে ক্লিক করুন।


1
স্ট্যাকওভারফ্লোতে আপনাকে স্বাগতম এবং উত্তর দেওয়ার জন্য ধন্যবাদ। আপনি মার্কডাউন সম্পাদকের বৈশিষ্ট্যগুলি একবার দেখে নিতে চাইতে পারেন, যাতে আপনি কোড ব্লক, তালিকা ইত্যাদির বিন্যাস করতে পারেন: স্ট্যাকওভারফ্লো / অ্যাডিটিং- হেল্প । আপনার উত্তরটি উন্নত করতে আমি আপনার উত্তর সম্পাদনা করেছি।
পল টার্নার

এই প্রশ্নের পুরো বিষয়টি হ'ল আপনি যা বর্ণনা করেছেন তা কার্যকর হয় না যদি আপনি নিজের লগইন অ্যাকাউন্টের জন্য ডিফল্ট ডাটাবেস মুছে ফেলে থাকেন । আমার বিশেষ ক্ষেত্রে আমি সিস্টেমে একমাত্র প্রশাসক তাই অন্য কারও অ্যাকাউন্ট ব্যবহার করে একই প্রভাবটি অর্জন করতে পারিনি।
মার্টিন ব্রাউন

@ মাতিজস আশা করি আপনি প্রশ্নের শেষ এই লাইনটি "পড়তে পারেন যে কেউ কীভাবে আমার ডিফল্ট ডাটাবেসটি অবজেক্ট এক্সপ্লোরার ব্যবহার না করে সেট করবেন?" আপনি যা করতে বলেছেন তা ঠিক তাই।
রোহিত ভিপিন ম্যাথিউজ

2
এটি ওপি-র প্রশ্নের উত্তর নাও দিতে পারে তবে এটি আমার উত্তর দিয়েছে। এটি একটি দরকারী উত্তর।
সিজে ডেনিস

1
এটি আজুর ডেটাবেসগুলিতে সম্ভব নয়: /
স্কোয়াজz

14

আপনার ডিফল্ট ডিবি পরিবর্তন করার অনুমতি না থাকলে আপনি নিজের প্রশ্নের শীর্ষে আলাদাভাবে ডিবি নির্বাচন করতে পারবেন ...

USE [SomeOtherDb]
SELECT 'I am now using a different DB'

অন্য ডিবিতে আপনার অনুমতি পেলে কাজ করবে


8
  1. চেঞ্জ কানেকশন আইকনে ক্লিক করুন
  2. বিকল্পসমূহ << ক্লিক করুন
  3. কানেক্ট থেকে ডাটাবেস ড্রপ ডাউন থেকে ডিবি নির্বাচন করুন

কিছু কারণে এটি আমার জন্য কিছু ক্ষেত্রে এবং অন্যের ক্ষেত্রে নয় worked
লেভিনিনজা

3

আমি ALTER LOGINকমান্ডকেও গ্রহণযোগ্য উত্তর হিসাবে এবং এখানে বর্ণিত হিসাবে পছন্দ করব

তবে জিইউআই প্রেমিকাদের জন্য

  1. [সার্ভার ইনস্ট্যান্স] -> সুরক্ষা -> লগইনস -> [আপনার লগইন] এ যান
  2. [আপনার লগিন] এ ডান ক্লিক করুন
  3. পৃষ্ঠার নীচে ডিফল্ট ডেটাবেস অপশন আপডেট করুন

পড়তে ক্লান্ত !!! শুধু নিম্নলিখিত তাকান

এখানে চিত্র বর্ণনা লিখুন



0

এটি হয়ত বা প্রশ্নের যথাযথ উত্তর দিতে পারে না, তবে আমি যখন আমার অ্যাকাউন্টটি পরিবর্তন করে আমার "ডিফল্ট ডাটাবেস" হিসাবে তৈরি করেছিলাম তখন একটি নতুন ডাটাবেস রাখতে আমার এই সমস্যাটি (এবং প্রশ্ন) হয়ে গেল। তারপরে আমি সেই ডাটাবেসটি মুছলাম এবং স্ক্র্যাচ থেকে আমার তৈরি স্ক্রিপ্টটি পরীক্ষা করতে চাই। আমি এসএসএমএস লগ অফ করেছিলাম এবং ফিরে যেতে যাচ্ছিলাম, তবে অস্বীকার করা হয়েছিল - ডিফল্ট ডাটাবেসে লগ ইন করতে পারিনি ত্রুটি ছিল। ডি আহা!

আমি যা করেছি তা ছিল এসএসএমএস-এর লগইন সংলাপে, বিকল্পসমূহ, সংযোগের বৈশিষ্ট্যগুলিতে যান, তারপরে master"ডাটাবেসে কানেক্ট করুন" কম্বোবক্সে টাইপ করুন। সংযোগ ক্লিক করুন। আমাকে প্রবেশ করল there সেখান থেকে আপনি কমান্ডটি চালাতে পারেন:

ALTER LOGIN [DOMAIN\useracct] WITH DEFAULT_DATABASE=[master]
GO

-1

যদি আপনি উইন্ডোজ প্রমাণীকরণ ব্যবহার করেন এবং ব্যবহারকারী নাম এবং পাসওয়ার্ডের মাধ্যমে ব্যবহারকারী হিসাবে লগইন করতে আপনি একটি পাসওয়ার্ড জানেন না, আপনি এটি করতে পারেন: এসএসএমএস-এ লগইন-স্ক্রিনে নীচের ডানদিকে ক্লিক করুন বিকল্পগুলি, তারপরে সংযোগের বৈশিষ্ট্য ট্যাবে যান । তারপরে আপনি নিজেই অন্য যে ডাটাবেসের অ্যাক্সেস পেয়েছেন তার নাম ম্যানুয়ালি টাইপ করতে পারেন যেখানে এটি বলছে, যা আপনাকে সংযুক্ত করতে দেবে। তারপরে আপনার ডিফল্ট ডাটাবেস পরিবর্তন করার জন্য অন্যান্য পরামর্শ অনুসরণ করুন

https://gyazo.com/c3d04c600311c08cb685bb668b569a67

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.