Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Renaming an instance of SQL Server 2005

Îåêßíçóå áðü ôï ìÝëïò pap. Τελευταία δημοσίευση από το μέλος pap στις 07-11-2008, 10:09. Υπάρχουν 29 απαντήσεις.
Σελίδα 2 από 2 (30 εγγραφές)   < 1 2
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  04-11-2008, 13:53 45976 σε απάντηση της 45974

    Απ: Renaming an instance of SQL Server 2005

    Έχω ένα project έτοιμο που χρησιμοποιώ για διαχείριση connection strings σε όλα τα projects μου. Έτσι ώστε ο χρήστης να μπορεί να διαχειριστεί τις συνδέσεις του με τον ή τους servers. Τα connection strings τα αποθηκεύω μέσα στο app.config. Αν θέλεις μπορώ να σου το στείλω.

  •  04-11-2008, 13:56 45977 σε απάντηση της 45976

    Απ: Renaming an instance of SQL Server 2005

    Και το ρωτάς;;;Big Smile Αν σου είναι εύκολο στείλτο.

  •  04-11-2008, 14:55 45981 σε απάντηση της 45974

    Απ: Renaming an instance of SQL Server 2005

    Αν δουλεύεις με .ΝΕΤ μπορείς να αποθηκεύσεις το connection string στα Settings της εφαρμογής. Αν κάνεις righ-click > Properties θα δεις ότι ένα από τα τελευταία tab είναι και το settings. Εκεί μπορείς να προσθέσεις ένα connection string το οποίο θα αποθηκευθεί στο .config της εφαρμογής. Αν ο χρήστης θέλει να αλλάξει το connection string μπορεί να το κάνει αλλάζοντας το εκεί.

    Έχεις όμως και μία ακόμα επιλογή. Εφόσον δουλεύεις με SQL Server Express μπορείς να χρησιμοποιήσεις User Instances όπου ουσιαστικά συνδέεσαι σε ένα αρχείο και όχι σε ένα instance. Ο SQL Server Express σηκώνει ένα instance ειδικά για την εφαρμογή σου όταν ανοίξεις το connection.  Το connection string παίρνει τη μορφή Data Source=.\\SQLExpress;Integrated Security=true;User Instance=true;AttachDBFilename=|DataDirectory|\InstanceDB.mdf;Initial Catalog=InstanceDB;

    Ρίξε μία ματιά στο SQL Server Express User Instances γιατί πιστεύω ότι θα βολέψει πολύ στην περίπτωση σου.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  04-11-2008, 15:03 45982 σε απάντηση της 45981

    Απ: Renaming an instance of SQL Server 2005

    Α μάλιστα. Βάζω δηλαδή το *.mdf στο directory του application και ο sql server βλέπει τη βάση από εκεί. To Data Source=.\\SQLExpress  το αφήνω όπως έχει; Πρώτη φορά το συναντώ.

  •  04-11-2008, 15:20 45983 σε απάντηση της 45982

    Απ: Renaming an instance of SQL Server 2005

    Το || ήταν κακό copy-paste από τη σελίδα του User Instances. Κανονικά γράφεις .\\SQLExpress καθώς αυτό είναι το default instance ενός SQL Server Express. Κοίτα το άρθρο για να καταλάβεις τί ακριβώς γίνεται, καθώς υπάρχουν διάφορα χαρακτηριστικά τα οποία επηρεάζουν την εφαρμογή σου. Για παράδειγμα, ένα User Instance μπορεί να σηκωθεί ακόμα και από χρήστη ο οποίος δεν είναι administrator. Από την άλλη, οι βάσεις δουλεύουν σε single user mode οπότε μόνο ο χρήστης που σηκώνει τη βάση μπορεί να τη χρησιμοποιήσει. Ένα user instance δημιουργείται την πρώτη φορά που ο χρήστης ανοίξει ένα connection και κατεβαίνει αυτόματα κάποιο χρόνο αφού κλείσει και το τελευταίο connection.

    Αντιγράφοντας πάντα από το άρθρο, τα User Instances ταιριάζουν στα εξής σενάρια:

    • Υπάρχει μόνο ένας χρήστης και δεν είναι απαραίτητη η κοινή πρόσβαση σε δεδομένα
    • ClickOnce deployment
    • ASP.NET web sites όπου η σύνδεση στη βάση γίνεται με το application account και όχι με impersonation.

    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  04-11-2008, 15:35 45984 σε απάντηση της 45983

    Απ: Renaming an instance of SQL Server 2005

    Συνημμένα: Connections.zip

    Δεν είναι άσχημη λύση αυτή που έχει προταθεί από τον Παναγιώτη. Ίσως τελικά να ταιριάζει με την περίπτωση σου.

    Πέρα από αυτό σου στέλνω και το σχετικό project που σου έλεγα. Επειδή είμαι στην δουλειά και δεν μπορώ να του αφιερώσω αρκετό χρόνο το έφτιαξα μόνο για το insert. Απο εκεί θα καταλάβεις για το update και το delete. Δυστυχώς χρησιμοποιώ Third Party controls μαζί με SCSF οπότε ήταν αδύνατη η μεταφορά του project όπως πραγματικά το έχω οπότε έφτιαξα ένα από την αρχή και έκανα copy paste τις βασικές ρουτίνες για να δεις πως διαχειριζόμαστε το app.config.

    Αυτά από εμένα. Νομίζω ότι τώρα πλέον έχεις ένα αρκετά καλό background για να επιλέξεις πια αυτό που σου ταιριάζει καλύτερα.

  •  04-11-2008, 15:44 45985 σε απάντηση της 45984

    Απ: Renaming an instance of SQL Server 2005

    Ναι, απλά η εφαρμογή προορίζεται για περισσότερους από έναν χρήστες. Οπότε η 2η λύση πιθανόν να μη ταιριάζει (απ' ότι λέει ο Παναγιώτης και απ' όσα είδα σε άλλα sites). Anyway, θα κοιτάξω το αρχείο που μου έδωσες.

    Σας ευχαριστώ πολύ όλους για το χρόνο σας, σας είμαι ευγνώμων.

  •  04-11-2008, 22:59 45991 σε απάντηση της 45966

    Απ: Renaming an instance of SQL Server 2005

    pap:
    Αυτό που θέλω να κάνω είναι να εγκαταστήσω την εφαρμογή μου μαζί με τον SQL Server 2005 Express (ξεχωριστά ο SQL Server - όχι όλα μαζί σε ένα setup πακέτο προς το παρόν) και επειδή έχω δώσει μέσα στην εφαρμογή ένα στάνταρ instance name που θα αναγνωρίζει, θέλω στο target μηχάνημα να αναγνωρίζει το instance name που έχω στην εφαρμογή. Πχ. αν το όνομα του SQL Server θα γίνει με την εγκατάσταση 'PC1\SQLEXPRESS', θέλω να το κάνω 'MITSOS\SQLEXPRESS'. Στη δικιά μου περίπτωση τι λες, χρειάζεται να κάνω αλλαγές και στα registry keys;

    Μια ερώτηση εδώ: ο SQL Server θα τρέχει στο ίδιο μηχάνημα με την εφαρμογή σου; Από το παράδειγμά σου δείχνει ότι αυτή είναι η περίπτωση. Γιατί πρέπει να  βάλεις το server name στο connection string; Το όνομα του server μέσα στο connection string, μπορεί να αντικατασταθεί από διάφορα ισοδύναμα, όπως localhost ή (local) ή '.'.

    Δεν είναι ανάγκη να ξέρεις το ακριβές όνομα του server...

     

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  05-11-2008, 16:56 46015 σε απάντηση της 45991

    Απ: Renaming an instance of SQL Server 2005

    Ναι Γιώργο, στο ίδιο μηχάνημα. Απλά πρώτη φορά δοκίμασα τον SQL SERVER 2005 Express και έχω μπερδευτεί δεν ξέρω τι παίζει με instances (γενικά με instances) κλπ. Με το που εγκαταστάθηκε στο μηχάνημά μου συνδέθηκα στον SQL SERVER (δεν θυμάμαι αν συνδέθηκα από την εφαρμογή) μόνο με instance . Αυτή τη στιγμή δεν είμαι μπροστά στο pc που δουλεύω και δεν θυμάμαι αν δοκίμασα το (local). Θα επανέλθω άλλη στιγμή.
  •  05-11-2008, 17:35 46016 σε απάντηση της 46015

    Απ: Renaming an instance of SQL Server 2005

    Αν θα είναι πολυχρηστική η εφαρμογή, τότε το σενάριο του local θα παίζει μόνο για τον χρήστη που θα έχει τη βάση. Όλοι οι υπόλοιποι θα πρέπει να αναφέρονται στον remote server οπότε και πάλι δεν γλυτώνεις από το να αντιμετωπίσεις το θέμα του ορισμού του connection string.


    Vir prudens non contra ventum mingit
  •  06-11-2008, 09:23 46042 σε απάντηση της 46016

    Απ: Renaming an instance of SQL Server 2005

    Η εφαρμογή θα τρέχει σε ένα μηχάνημα. Απλά θα το χρησιμοποιούν περισσότεροι του ενός χρήστες.

    Δοκίμασα με (local) και δεν μπορεί να συνδεθεί στη βάση. Μήπως παίζει ρόλο το ότι υπάρχει instance? Τοπικά στο pc μου, η εφαρμογή συνδέεται μόνο εάν βάλω 'GIORGOS\SQLEXPRESS', με (local) δε γίνεται τίποτα. Οπότε δεν γλυτώνω τον ορισμό του connection string.

  •  06-11-2008, 11:51 46045 σε απάντηση της 46042

    Απ: Renaming an instance of SQL Server 2005

    Εάν βάλεις (local)\SQLEXPRESS;
    View Παναγιώτης Χαραλάμπους's profile on LinkedIn
    Coding at Mediterranean Acoustics
  •  06-11-2008, 12:14 46048 σε απάντηση της 46045

    Απ: Renaming an instance of SQL Server 2005

    Ναι, με (local)\SQLEXPRESS δουλεύει. Θέλω να ρωτήσω κάτι ως προς τον SQL Server 2005 Express:

    • Ενώ γίνεται install, πως μπορώ να καθορίσω να μην έχει instance; Όχι ότι οπωσδήποτε θέλω να το κάνω για κάποιο λόγο, απλά να ξέρω αν και πως γίνεται.
    • By default βάζει instance; Αν ναι, μπορώ να το αλλάξω από τις ρυθμίσεις;

    Πρώτη φορά εγκατέστησα τον SQL 2005 και δεν έχω ιδέα τι γίνεται.

  •  06-11-2008, 14:57 46053 σε απάντηση της 46048

    Απ: Renaming an instance of SQL Server 2005

    Οι απαντήσεις σε όλες τις μέχρι τώρα απορίες σου βρίσκονται και στο documentation του SQL αλλά και σε κάθε εισαγωγικό site σχετικό με την βάση. Τα instances είναι βασικό κομμάτι της εγκατάστασης του SQL Server και πάντα πρέπει να υπάρχει ένα. Μπορείς να έχεις μέχρι 16 διαφορετικά instances πάνω σε ένα μηχάνημα (μιλάω για τον 2000, στον 2005 ίσως αυτό να άλλαξε). Από εκεί και πέρα γίνεται ένας διαχωρισμός μεταξύ των instances. Έχουμε δηλαδή το default και τα υπόλοιπα. Η διαφορά υπάρχει στο πως θα γράψεις το Data Source του connection string για να αναφερθείς στο συγκεκριμένο instance που σε ενδιαφέρει. Για το default μπορείς να βάλεις <pc name>\SQLExpress ή .\SQLExpress ή (local). Για τα υπόλοιπα instances <pc name>\<instance name>. Εάν θέλεις να αναφερθείς σε κάποιο instance που βρίσκεται σε διαφορετικό μηχάνημα μπορείς να το κάνεις είτε με το όνομα του μηχανήματος (<pc name>\<instance name> ή με το ip που βρίσκεται εγκατεστημένο το instance του SQL <ip address>\<instance name>.

    Για την αλλαγή του ονόματος ενός instance, o τρόπος που δίνεται επίσημα από την Microsoft είναι αυτός που έχουμε ήδη αναφέρει. Και πάλι όμως σου αναφέρω ότι η σκέψη που σε οδήγησε γιατί θα πρέπει να αλλάξεις το instance είναι λάθος. Δεν θέλεις αυτό, αυτό που χρειάζεσαι είναι διαχείριση του connection string.

     

  •  07-11-2008, 10:09 46066 σε απάντηση της 46053

    Απ: Renaming an instance of SQL Server 2005

    Σωστά.

    Το πρόβλημά μου λύθηκε, όλα παίζουν ρολόϊ. Και πάλι σε ευχαριστώ για τον κώδικα που μου έδωσες.

Σελίδα 2 από 2 (30 εγγραφές)   < 1 2
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems