Jump to content

antonch

Administrators
  • Posts

    1030
  • Joined

  • Last visited

  • Days Won

    7

Everything posted by antonch

  1. χα χα γραψτε γραψτε δεν τα προλαβαίνω όλα
  2. χα χα επιστρέφω σε μια βδομάδα παλικάρια.......
  3. Θαυμάσια νέα, αρκεί η νέα έκδοση να δουλεύει σωστά με UCP και να μπορώ να την κάνω uninstall
  4. Πριν από πολλά χρόνια ήταν 1989 ή 1990 χτυπάει το τηλέφωνο στην εταιρεία Χ και από την άλλη γραμμή του σύρματος ακούγεται μια φωνή "Ρε φιλαράκι τι τρώει ο κομπιούτορας;" Η απάντηση του τεχνικού που είχε όρεξη για πλακούλα ήταν "Ρεύμα" και εξαγριωμένος ο πελάτης απαντά "Μη μου κάνεις πλάκα του γράφω Mitsos και μου λεει φιλε νοτ φουντ (file not found)" Αξέχαστες εποχές DOS!
  5. θα συμπληρώσω ότι όποιος το χάσει θα βαράει το κεφάλι του στο τοίχο, ετοιμάζουμε θεματολογία που εφάμιλη θα βρείτε από teched και πάνω
  6. Σήμερα δεν ξημέρωσε καλά για κάποιον συνάδελφο. Δυστυχώς για αυτόν είχε να αντιμέτωπίσει ένα σοβαρό θέμα μιας και η βάση του ERP του ήταν suspect. Πραγματικά είχα καιρό να ακούσω για κάτι τέτοιο και τις περισσότερες φορές αιτία είναι hard disk failures. Όπως και να έχει όμως υπάρχει τρόπος να την φέρεις ξανά πίσω με την παραδοχή ότι θα έχεις πιθανότατα κάποιες απώλειες δεδομένων. Βέβαια η καλύτερη λύση σε αυτές τις περιπτώσεις είναι να κάνεις restore το backup σου που θα σου εξασφαλίσει ότι δεν θα έχει απώλειες δεδομένων. Στην παρακάτω λύση πάμε όταν δεν έχουμε backup. Κάτι το οποίο το θεωρώ αδιανόητο αλλά δυστυχώς ο συνάδελφος δεν είχε backup! Κανόνας Απαράβατος ΔΕΝ ΚΑΝΟΥΜΕ ΠΟΤΕ DETACH MIA SUSPECT DATABASE Από εκεί και μετά εκτελούμε μια μια τις παρακάτω εντολές ALTER DATABASE dbname SET EMERGENCY; GO ALTER DATABASE dbname SET SINGLE_USER; GO DBCC CHECKDB (dbname, REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS, ALL_ERRORMSGS; GO Μετά από την εκτέλεση της τελευταίας εντολής θα έχουμε ένα μεγάλο μύνημα το οποίο θα μας ενημερώσει για πολλά πράγματα και για το τι ακριβώς έχει γίνει και τι ενδεχομένος άλλες ενέργειες θα πρέπει να κάνουμε Το μόνο που μας μένει είναι να ξαναφέρουμε την βάση σε χρήση για πολλαπλούς χρήστες ALTER DATABASE dbname SET MULTI_USER; GO
  7. Admin σε εταιρεία έχει ένα server στον οποίο έχει στήσει SQL Server. Ο server αυτός είναι για αποκλειστική χρήση του SQL Server, και έχει 12GB RAM. O admin αποφάσισε να δώσει τα 6GB από τα 12GB στον SQL Server. Σε ερώτηση γιατί το έκανε αυτό μιας και o server θα έχει αποκλειστικά SQL Server έδωσε την παρακάτω απάντηση: "Μπορεί κάποιος που είναι στο δύκτιο να θελήσει λίγο περισσότερη μνήμη, να μην έχω να του δώσω!" []
  8. Όταν δημιουργήτε ένα report το οποίο έχει μέσα του images και θέλετε να έχετε μικρό μέγεθος αρχείου όταν το κάνετε export σε PDF, φροντίστε αυτές να είναι σε jpeg format. Οτιδήποτε άλλο τα reporting services το μεταφράζουν σε BMP και αυτό έχει σαν αποτέλεσμα να μεγαλώνει δραματικά το μέγεθος του αρχείο ειδικότερα αν έχετε μεγάλο αριθμό από εικόνες ή φωτογραφίες.
  9. Admin σε εταιρεία αγοράζει server με δίσκο 250 GB. (το αφήνω ασχολίαστο) Σπάει τον δίσκο σε C: & D: Στο C: δίνει χώρο 29,2 GB και όλα τα υπόλοιπα στο D: Στήνει Windows 2008 R2 και SQL Server 2008 όλα στο C: !!! Kαι τον D: τι τον κάνει????????????????????? Τον αφήνει έτσι όπως είναι για να παίρνει τα backups (ωχ παναγιά μου το είπα) Υ.Γ Δεν είχε άλλου είδους backup. Σε συνέχεια απο το #2 Στην εταιρεία αυτή έρχεται ένας εξωτερικός συνεργάτης. Βλέπει τη κατάσταση και κατεβάζει πρόταση ότι για τα backups και μόνο πρέπει να αγορασθεί ξεχωριστό storage!!!!
  10. Νικόλα μου Νικόλα μου Δεν είναι τόσο τεχνικό το θέμα, αν και το πιάνεις σωστά. Είναι αρκετά βαθύτερο αλλά θα σας αφήσω να το βρήτε μόνοι σας. Δεν έχει αξία να σας το πω έτσι φόρα παρτίδα που λέει και ο θυμόσοφος λαός μας Καλές Διακοπές Υ.Γ. Το χωρίο είναι καλά
  11. Πότε τελικά λέμε ότι αυτός ο άνδρας είναι φαλακρός; Η φαλάκρα είναι κάτι το οποίο σε αρκετούς άνδρες δημιουργεί ψυχολογικά προβλήματα σε άλλους πάλι κανένα, και σε κάποιους άλλους μερικές φορές τους ακουμπάει για κάποια χρονικά διαστήματα αλλά γενικά εχουν συμβιβαστεί μαζί της. Πέρα όμως από αυτό το ερώτημα παραμένει. Πότε τελικά κάποιος είναι φαλακρός; Αν για παράδειγμα από τα μαλλιά μου βγάλω μια τρίχα είμαι φαλακρός; Η προφανής απάντηση είναι όχι. Αν βγάλω και δεύτερη και τρίτη και τέταρτη αυτό με κάνει φαλακρό; Προφανώς όχι. Αν όμως χάσω εκατοντάδες τρίχες αυτό με κάνει φαλακρό; Ποιός μπορεί να το απαντήσει αυτό με σιγουριά. Αν συνεχίσω να χάνω εκατοντάδες τρίχες καθημερινά και ένα πρωινό ο γιός μου φωνάξει «Πατέρα είσαι φαλακρός» είμαι τελικά φαλακρός ή έχω αρχίσει να φαλακρένω. Υπάρχει τελικά κάτι το οποίο μπορεί να ορίσει το αν είμαι φαλακρός ή όχι; Στην φιλοσοφία αυτο είναι το Σόφισμα του σωρείτη το οποίο είναι ένα λογικό παράδοξο που ασχολείται με την ασάφεια των κατηγορημάτων σε μία λογική πρόταση δείχνοντας ότι είναι πιθανό να μην υπάρχει ένα σαφές όριο ανάμεσα σε ένα κατηγόρημα και την άρνησή του. Στον προγραμματισμό έχουμε μάθει να λαμβάνουμε αποφάσεις με βάση την δυαδική λογική (if/else). Έχουμε δομήσει το τρόπο σκέψης μας με αυτό το pattern. Οτιδήποτε πέρα από αυτό μας ξενίζει, μας δημιουργεί πρόβλημα, μας ανατρέπει τον τρόπο σκέψης μας. Θυμάμαι χαρακτηριστικά το CheckBox Control το οποίο όταν πρωτοβγήκε δημιούργησε θύελα αντιδράσεων και αυτό γιατί είχε τρεις διαφορετικές περιπτώσεις checked/unchecked/indeterminate. Η τελευταία ήταν αυτή που δημιουργούσε το πρόβλημα. Δεν μπορούσαμε να καταλάβουμε το λόγο ύπαρξης της. Τι σημαίνει ούτε ναι ούτε όχι. Ταλαιπώρησε και συνεχίζει να ταλαιπωρεί αρκετό κόσμο της πληροφορικής. Το να γράψεις λογισμικό τελικά δεν είναι μια δυαδική λογική ή είναι; Η τρίτη επιλογή πρέπει να λαμβάνεται υπόψη ή όχι; Ποιος μπορεί να δώσει ασφαλή απάντηση, και μιλάω για μια απάντηση η οποία να είναι αποδεκτή από όλους. (Δύσκολο) Προς τους αδερφούς developers Την επόμενη φορά που θα γράψετε software μη σκεφτήτε το άλλο το περίεργο. Σκεφτήτε με την λογική του if/else αλλά αλλάξτε το στη τελική σας υλοποίηση με τη switch αφήνοντας ένα παράθυρο στην πιθανότητα Καλές Διακοπές
  12. to a από το ανδρεας
  13. Εγκαινιάζω ένα νέο tag στο blog μου με το όνομα Margaritaria. Εδώ θα σας γράφω τα ωραία που κατα καιρούς ακούω. Ελπίζω να σας αρέσει η περιόχη αυτή ΚΟΛΛΑΕΙ Ο SQL SERVER?? ΛΥΣΗ ΤΟΝ ΒΓΑΖΟΥΜΕ ΑΠΟ ΤΟ DOMAIN ΠΟΥ ΕΤΣΙ ΚΑΙ ΑΛΛΙΩΣ ΚΑΚΟ ΕΙΝΑΙ ΓΙΑΤΙ ΡΙΧΝΕΙ ΤΟ PERFORMANCE
  14. Σημέρα ένας αγαπητός συνάδελφος έρχεται στο γραφείο μου και μου κάνει την εξής ερώτηση: «Υπάρχει κανένας τρόπος με τον οποίο μπορώ να δω το μέγεθος των πραγματικών δεδομένων που έχουν αποθηκευτεί στην βάση μου σε ένα πεδίο τύπου image;» Σίγουρα η πρώτη σκέψη όλων μας θα πάει στην LEN(), αλλά αυτή όμως δεν παίζει με πεδία τύπου image, text, ntext. Αντί για αυτή μπορούμε να χρησιμοποιήσουμε την DATALENGTH() η οποία επιστρέφει το μέγεθος σε bytes και η οποία φυσικά μπορεί να χρησιμοποιηθεί και για όλα τα άλλα data types του SQL Server. Ένα παράδειγμα Έστω ότι έχω τον πίνακα Α CREATE TABLE A ( ID INT PRIMARY KEY NOT NULL, PHOTO IMAGE ) Μπορώ να διαβάζω το πραγματικό αποθηκευμένο μέγεθος στο πεδίο PHOTO με ένα απλό query SELECT ID, DATALENGTH(PHOTO) SizeInBytes, DATALENGTH(PHOTO)/1024 SizeInKB FROM A Αυτά για την ώρα, καλή σας ημέρα και καλό SQL Server programming
  15. Πρόσφατα έπεσα μούρη με μούρη σε μια παρουσίαση του Kevin Cox που είχε το παραπάνω θέμα. Επειδή είναι αρκετά ενδιαφέρουσα και ρίχνει αρκετούς μύθους αποφάσισα να την μοιραστώ μαζί σας. Ας ξεκινήσουμε με μερικά στατιστικά Category Metric Largest single database 70 ΤΒ Largest table 20 ΤΒ Biggest total data 1 application 88 PB Highest database transactions per second 1 db (from Perfmon) 130.000 Fastest I/O subsystem in production (SQLIO 64k buffer) 18 GB/sec Fastest “real time” cube 5 sec latency data load for 1TB 20 minutes Largest cube 12 TB Ας προχωρήσουμε στα πιο ειδικά OLTP Systems MySpace 500+ SQL Servers, adding new ones every week Total data managed > 1 PB Data Dependent Routing, Distributed Partitioned Views, Replication, SODA Currently moving to Windows 2008 / SQL 2008 Data Dependent Routing, Distributed Partitioned Views, Replication, Caching Tier, Service Broker 500,000 Users: A Simple Architecture Stumbles (two Web servers talking to a single database server – 3 database servers (1 write, 2 read)) 1 Million Users: Vertical Partitioning Solves Scalability Woes (separate databases for parts of the Web site that served different functions) 3 Million Users: Scale-Out Wins Over Scale-Up (cost for scale-up too high), SODA 9 Million Users: Site Migrates to ASP.NET, Adds Caching Tier, Data Dependent Routing 26 Million Users: MySpace Embraces 64-Bit Technology, SQL Server 2008, Service Broker High Availability Windows Clusters 7+1, moving to 10+1 Unattended patching via custom Powershell scripts and management control screen Extensive testing before patching Continually improving operations process 3,000 – 7,000 connections average 2 data centers Doing SAN snapshots between sites In case of loss of one site, can bring up other site to take over within a few hours. Great article on architecture changes as they grew: http://www.baselinemag.com/article2/0,1540,2082921,00.asp Bwin.com Online gaming applications - Europe‘s largest betting line-up Sports Poker Casino Skill Games 90 different sports covered in 22 languages > 12,000 different bets offered per day > 3 million individual and combination bets placed every day Bwin.com sponsors top world soccer teams Real Madrid AC Milan FC Bayern Munich Key Technologies Running on SQL Server 2008 & Windows 2008 Enterprise Windows Communication Foundation Synchronous database mirroring between two centers 12 km apart Added 1 ms delay on transaction 99.99x% availability @ 24 x 7 since migrating to SQL from Oracle. 100.00% uptime in 2008 and 2009 (since moving to SQL 2008 and Windows 2008) Zero data loss (financial transactions are involved) Replication and Log shipping for most databases DB Mirroring for betting data base. Full suite of SQL products - IS, AS and RS ASP.NET for applicatio Some numbers Peak financial transactions 6000 per second Peak db transactions 30,000 per second Databases 800+ Instances 100+ Largest table 2 billion rows Total data in SQL Server 100+ TB Backup of 2 TB over network under 1 hr Largest machines 64 core 512 GB IA2 HP 6 x 32 core IA2 400% boost in performance on 128 cores 256GB RAM on IA64 using SQL 2008 R2 More info http://sqlcat.com/whitepapers/archive/2009/08/13/a-technical-case-study-fast-and-reliable-backup-and-restore-of-a-vldb-over-the-network.aspx http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000001470 Retail Application 1,200 stores SQL Standard 10 GB average 15,000 cash registers SQL Express 10 MB database average 1 Corporate Server SQL Enterprise Windows Cluster + DB Mirroring AS, IS, RS 12+ TB database, 1.5 TB cube. Merge replication for products & pricing Service Broker for all transactions One of the largest Service Broker and replication projects in the world 2 Million SKUs (products) 25 Million Accounts 10 million transactions / day SQL Server, AS, IS, RS Windows Cluster, DB Mirroring, Log Shipping DATA WAREHOUSEs Pan Starrs Project Largest Astronomy project in history 4 telescopes capturing 1.5 giga pixel images 100TB on single instance (5 db x 20TB) Total data managed > 1PB 5+TB added per day HA/DR Relying on backups of the input files for now Telecom CDR Analytics 70TB Relational 4TB largest cube 100+ concurrent queries Itanium 64 core with storage system rated over 20GB/sec throughput Loading 1TB in Processing 1m rec/sec in AS cubes Hilton Hotels Room forecasting system Full suite of SQL products (SQL, AS, IS, RS) Scale out AS and RS Load Balanced Analysis Services reader machines 40 to 50 concurrent users per RS server Complex queries Large data sets returned to many clients IBM xSeries and IBM Blade Center servers Case study: http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=49192 Stein Mart First Fast Track case study Saved $50,000 / month after AS/400 migration Faster results – 3 hours of processing instead of 14 hours Less people to maintain Users love the new tools! 4 TB data warehouse http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000007013
  16. Η διαφορά με το SQLMail είναι ότι αυτο ήθελε MAPI Account ενώ το SQL DBMail θέλει SMTP Account. Ο Service Broker δεν έχει ΚΑΜΙΑ σχέση με το DB Mail.
  17. Αφορμή για αυτό το post είναι ένα ερώτημα από ένα φίλο της κοινότητα μας (autoexec.gr). Είναι για τον SQL Server 2005 αλλά μπορείτε να το εφαρμόσετε και στις επόμενες εκδόσεις Για να εγκαταστήσουμε το database mail θα πρέπει να ακολουθήσουμε τα παρακάτω βήματα. Μια βασική προυπόθεση είναι να έχουμε ένα smtp server με ένα mail account. Ανοίγουμε το SSMS και πάμε δεξί κλικ Configure Database Mail όπου ο Database mail configuration wizard ξεκινάει Στο ερώτημα αυτό απαντάμε Yes στην ουσία ενεργοποιεί το database mail στον SQL Server. Aν πούμε όχι μετά τα πρέπει να πάμε στο Surface Area Configuration για να το ενεργοποίησουμε Δίνουμε ένα αναγνωριστικό στο Profile name και πατάμε Add Συμπληρώνουμε τα στοιχεία που ζητάει η συγκέκριμένη φόρμα με τα στοιχεία του mail account και του smtp server που αυτό υπάρχει, και πατάμε ΟΚ. Θα γυρίσουμε στην προηγούμενη φόρμα και η εικόνα μας θα είναι κάπως έτσι Πατάμε Next κάνουμε τα παρακάτω ανάλογα το πως θέλουμε να είναι το profile μας. Εγώ εδώ ορίζω και τα δύο. και πατάμε Next Πατάμε Next Πατάμε Finish Πατάμε Close και για να ελέγουμε ότι όλα είναι εντάξει επιλέγουμε Send Test E-Mail Αφού βεβαιώθουμε ότι όλα είναι ΟΚ πατάμε ΟΚ Έαν στον διάλογο που μας ρωτούσε για το αν θέλουμε να ενεργοποιήσουμε το database mail δεν είχαμε απαντήσει καταφατικά θα πρέπει να πάμε στα configuratio tools του SQL Server και να ανοίξουμε το SQL Server Surface Area Configuration Tool, επιλέγοντας το Surface Area Configuration for Features και έπειτα πάμε database mail και κάνουμε κλικ στο Enable Database Mail Stored procedured όπως στη παρακάτω εικόνα Εάν τώρα θέλουμε μέσα απο τον SQL Server να στέλνουμε mails τότε θα πρέπει αυτό να γίνει με την χρήση της stored procedure sp_send_dbmail. Ένα παράδειγμα έχω στην παρακάτω εικόνα το οποιο εκτελεί ένα query και στέλνει τα αποτελέσματα στους παραλήπτες που έχουμε ορίσει. Αυτοί μπορεί να είναι πολλοί απλά θα πρέπει στην αντίστοιχη παράμετρο να βάλω τα emails τους χωριζόμενα με semicolon (. Για περισσότερες πληροφορίες για την sp αυτή στα books online. Ανοίγουμε ένα νέο query window και εκτελούμε την stored procedure sp_send Το αποτέλεσμα θα είναι ο παραλήπτης να δει στο mail box του την παρακάτω εικόνα
  18. Εισαγωγή Αρκετό καιρό έχω να γράψω ένα μεγάλο άρθρο, έτσι σήμερα μου ήρθε η όρεξη να το κάνω. Έσπαγα το κεφάλι μου να βρω ένα ωραίο θέμα ώστε να σας κεντρίσει το ενδιαφέρον. Αμέσως στο μυαλό μου ήρθε το θέμα που ο τίτλος περιγράφει. Γιατί όμως επέλεξα αυτό; Αφορμή για αυτό είναι κάποια γεγονότα και καταστάσεις που αντιμετώπισα τον τελευταίο διάστημα. Επίσης ένας ακόμα σημαντικός λόγος είναι ότι πλέον η εποχή του virtualization είναι πραγματικότητα και μάλιστα χωρίς να το καταλάβεις βρίσκεσαι με ένα μεγάλο αριθμό από τέτοιες μηχανές. Σαν σοβαροί επαγγελματίες που θέλουμε να εξοικονομήσουμε χρόνο συνήθως έχουμε προετοιμάσει κάποια base images των λειτουργικών που θέλουμε με εγκατεστημένα τα προϊόντα που εκ προοιμίου θέλουμε, και με την γνωστή διαδικασία (SysPrep) η δημιουργία μιας νέας virtual machine να είναι υπόθεση μερικών λεπτών. Σε αυτή την περίπτωση όμως αν είχαμε εγκαταστήσει SQL Server είχαμε να αντιμετωπίσουμε μερικά προβλήματα. Δεν ήταν άλυτα, δεν ήταν φοβέρα. Απλά σου χάλαγαν λίγο την διάθεση και την ευκολία, αλλά τελικά τι δουλεία σου την έκανες (με λίγο γκρίνια βέβαια). Όλα αυτά όμως ανήκουν στο παρελθόν. Στον SQL Server 2008 R2 μας δίνεται η δυνατότητα να εγκαταστήσουμε τον SQL Server στο base image μας χωρίς όμως να τον κάνουμε να λειτουργεί. Στην ουσία στήνονται όλα τα binaries, δεν γίνονται όμως configure θέματα που αφορούν computer, network, account-specific information. Αυτό μου δίνει τη δυνατότητα να μπορώ ευκολότερα να φτιάξω μια πλειάδα από μηχανές που περιέχουν ετοιμοπόλεμο SQL Server και μάλιστα με το ίδιο configuration!!! Τι μπορώ να έχω · Με την συγκεκριμένη διαδικασία μπορώ να έχω έτοιμα μόνο τα Database Engine Service & Reporting Services. Τα SQL Server Browser, SQL Server Writer & SQL Server Native Client γίνονται εγκατάσταση όταν τελικά ενεργοποιώ τον SQL Server · Μπορώ μετά την προετοιμασία να προσθέσω ή να αφαιρέσω features του SQL Server. · Μπορώ να έχω προετοιμάσει πολλά Instances του SQL Server. Τι δεν μπορώ · Δεν έχω την δυνατότητα να έχω "ετοιμα" SQL Server Analysis Services. · Δεν υποστηρίζεται SQL Server Cluster Installation. · Δεν υποστηρίζεται η εγκατάσταση των SQL Server Tools (SSMS κλπ) · Δεν υποστηρίζεται ΙΑ-64 εγκατάσταση. · Δεν μπορώ να κάνω προετοιμασία ένος SQL Server 2008 R2 Instance σε μηχανή που έχει ήδη προηγούμενες εκδόσεις του SQL Server. Η διαδικασία προετοιμασίας (Preparation) Ξεκινάμε το setup το SQL Server και επιλέγουμε Advanced > Image preparation of a stand-alone instance of SQL Server Ξεκινάει η διαδικασία εγκατάστασης όπως την έχουμε συνηθίσει Με την ολοκλήρωση της φάσης Setup Support Rules πατάμε OK Ακολουθεί η φάση Setup Support Files στην οποία πατάμε Install. Η διαδικασία ξεκινάει και με την ολοκλήρωση της ακολουθούν ο διάλογος με την License Terms όπου φυσικά και επιλέγουμε τα παρακάτω Ο επόμενος διάλογος μας δίνει τη δυνατότητα να επιλέξουμε τα features που θέλουμε να έχουμε διαθέσιμα όταν θα ενεργοποιήσουμε το instance μας. Φυσικά όπως είπα και παραπάνω διαθέσιμα δεν είναι όλα Αφού επιλέξουμε ο επόμενος διάλογος μας δίνει την δυνατότητα να ορίσουμε κάποιες βασικές πληροφορίες για το instance μας. Η βασικότερη είναι το Instance ID. Αυτό χρησιμοποιείται για να ξεχωρίζει τα installation directories και τα registry key του instance σας. Αυτό βέβαια δεν είναι δεσμευτικό όταν θα γίνει η ενεργοποίηση. Μπορείς πχ να ορίσεις σαν Instance ID κάτι και κατά την επόμενη φάση της ενεργοποίησης να δώσεις κάτι άλλο. Απλά το Instance ID θα παραμείνει το ίδιο ώστε να μην υπάρχει αλλαγή όσα παραπάνω ανάφερω. Ακολουθούν μερικοί διάλογοι που μας ενημερώνουν για την εξέλιξη της διαδικασίας μας στους οποίους απαντάμε τα βασικά Ώσπου φτάνουμε στο σημείο που είμαστε έτοιμοι για την δημιουργία του image. Στο οποίο βλέπουμε τι έχουμε επιλέξει και πατάμε Prepare Η διαδικασία ξεκινάει και με την ολοκλήρωση της φτάνουμε στον παρακάτω διάλογο πριν φύγετε από εδώ καλό είναι να κάνετε κλικ στο link που σας λέει, όπως επίσης και να πάτε στο directory που δείχνει το link αυτό μιας και σε αυτό θα βρείτε το ConfigurationFile.ini το οποίο και μπορείτε να χρησιμοποιήσετε σαν βάση για εγκατάσταση του SQL Server από configuration file Με την ολοκλήρωση της διαδικασίας αυτής έχουμε έτοιμο το instance του SQL Server. Μπορούμε να προχωρήσουμε στη διαδικασία του Windows SysPrep και να φτίαξουμε μια νέα μηχανή χρησιμοποιώντας το image αυτό το οποίο περιέχει το λειτουργικό μαζί με τον SQL Server. Η διαδικασία ενεργοποίησης (Completion) Όταν ανοίξουμε την νέα μηχανή και τελειώσουμε με τα του λειτουργικού πάμε στο Start menu και διαλέγουμε μια από τις παρακάτω επιλογές και πάμε ακολουθούμε τα βήματα ώσπου φτάνουμε στον παρακάτω διάλογο στον οποίο επιλέγουμε το προετοιμασμένο μας instance Στον παρακάτω διάλογο μπορείς να επιλέξει αν θα το ενεργοποιήσεις σαν default ή named instance Ακολουθούν μερικοί διάλογοι με τους οποίους ορίζεις τα παρακάτω και φτάνουμε στο σημείο στο οποίο έχουμε δώσει όλες τις απαραίτητες πληροφορίες ώστε να κάνουμε ενεργοποίηση του Instance μας Ακολουθούμε τις οδηγίες και τελικά φτάνουμε στο επιθυμητό μας αποτέλεσμα
  19. χα χα, μπορεί να έχεις δίκιο όμως το συγκεκριμένο στιγμιότυπο είναι από μια έργασια που είχε να επεξεργαστεί πάνω από 16ΤΒ δεδομένα άρα μια χαρά θα έφτιαχνε το χταποδάκι ;-)
  20. Ένας συνάδελφος MVP του SQL Server, που έχει ένα σύστημα σε SQL Server, που ψήνει καφέ, χταπόδια, μουσακά και άλλα ευγενή εδέσματα, μας έστειλε με υπερηφάνια το νέο του παιχνίδι. Ζ Η Λ Ε Ψ Τ Ε
  21. Μπράβο παλικάρι. Να σε έχει ο Θεός καλά να προχωράς έτσι.
  22. Είχα σκοπό να τα φτιάξω κάτι σχετικό, αλλά ψάχνοντας για κάτι άλλο, έπεσα επάνω τους. Σας δίνω τα links ώστε να τα δείτε. Installation of a Single Node Failover Cluster in SQL Server 2008 Add a Node to an Existing Failover Cluster in SQL Server 2008 Remove a Passive Node from an Existing Failover Cluster in SQL Server 2008 Remove the Active Node from an Existing Failover Cluster in SQL Server 2008
  23. @ckotsidimos: Λογικά θα έχεις φροντίσει ο χρήστης σου να έχει δικαιώματα στο S1 schema σώστα; Τώρα για να μπορείς να δει ο χρήστης σου τα αντικείμενα των S2, S3 ENOEITE ότι πρέπει να του δώσεις δικαιώματα είτε στο κάθε αντικείμενο ξεχωριστά είτε σε επίπεδο schema. πχ. GRANT SELECT ON SCHEMA :: S2 TO user GRANT SELECT ON SCHEMA :: S3 TO user αν θες μόνο SELECT OR GRANT ALL ON SCHEMA :: S2 TO user GRANT ALL ON SCHEMA :: S3 TO user αν θες τα πάντα Προσοχή δεν μπορείς να βάλεις system defined database roles αντί χρήστη, μπορείς όμως να βάλεις δικά σου Βέβαια όλα αυτά δεν έχουν να κάνουν με το παρόν άρθρο αλλά με την γενικότερη θεωρία του SQL Server Security για το οποίο έχω υποσχεθεί να γράψω ένα άρθρο (ίσως και περισσότερα)
  24. Αρκέτες φορές έχω δεχθεί ερωτήσεις σχετικά με τα database Schemas. Οι πιο δημοφιλείς ερωτήσεις είναι; Τι είναι τα Schemas; Ποιά είναι η πρακτική αξία τους; Γιατί τα έβαλαν στον SQL Server τόσο αργά; η Oracle τα έχει χρόνια τώρα! Θα ξεκινήσω με την τελευταία. Μπορεί τα schemas να εμφανίστηκαν από τον SQL Server 2005 αλλά αυτό δεν σημαίνει ότι δεν υπήρχαν και πριν. Υπήρχαν αλλά δεν ήταν “ορατά”. Στην πραγματικότητα με το που έφτιαχνες έναν user, αυτόματα δημιουργόνταν το αντίστοιχο schema. Στην Oracle υπήρχαν, αλλά ο σκοπός τους ήταν καλύψουν μια ανάγκη που βασικά δεν την είχαμε, ούτε την έχουμε, στον SQL Server. Όπως θα γνωρίζεται κάθε database στην Oracle είναι ένα διαφορετικό service. Έτσι εάν θέλω να έχω μια βάση για το ERP μου, μια βάση για το Web Site μου, και μία βάση για κάτι άλλο, θα πρέπει να έχω τρία διαφορετικά services να τρέχουν. Στο SQL Server δεν το έχουμε ανάγκη αυτό, διότι με ένα service μπορώ να έχω 32767 διαφορετικές βάσεις. Με την χρήση λοιπόν των schemas στην Oracle έλυνα το παραπάνω θέμα. Έφτιαχνα μια βάση στην οποία έφτιαχνα τα αντίστοιχα schemas μέσα σε αυτή ώστε να καλύψω τις τρεις διαφορετικές δομές που είχα σε κάθε βάση. Η εμφάνιση των Schemas στον SQL Server είναι για να λύσουν άλλα θέματα. Αλλά ας πάρουμε τα πράγματα από την αρχή. Ένα Schema στον SQL Server δεν είναι τίποτα άλλο από ένα named container για τα database objects (tables,views,stored procedures κλπ). Βασικός λόγος που έκαναν την εμφάνιση τους τα Schemas από τον SQL Server 2005 και μετά ήταν για να λύσουν ένα βασικό administration πρόβλημα. Έστω λοιπόν ότι έχω τον χρήστη Nasos. Δεν είναι administrator, δεν είναι database owner, έχει όμως δικαιώμα να φτιάχνει tables. Έστω ότι αυτός έφτιαξε τους πίνακες Ν1 και Ν2. Άρα έχω dbname.Nasos.N1 και dbname.Nasos.N2. Εάν τώρα έσβηνα τον user Nasos είτε κατά λάθος είτε διότι έπρεπε, επειδή ο Νάσος έφυγε από την εταιρεία, στις προηγούμενες εκδόσεις τα object αυτά έμεναν ορφανά, το αποτέλεσμα ήταν ότι είτε δεν λειτουργούσαν stored procedures που πατούσαν πάνω σε αυτά, είτε δεν μπορούσα να προσπελάσω απευθείας, και έπρεπε να μπω στην διαδικασία να πάρω το ownership με ότι αυτό συνεπάγεται. Από τον SQL Server 2005 και μετά αυτό δεν συμβαίνει διότι πολύ απλά οι πίνακες αυτοί δεν ανήκουν στον user αλλά στο Schema. Αυτός ήταν και ο βασικός λόγος που σαν DBA δεν έδινα δικαιώματα στο user να φτιάχνει δικά του objects ή αν πραγματικά ήθελα να κάνω κάτι τέτοιο έβαζα όλους τους χρήστες με ένα user name. Κάθε user ανήκει σε κάποιο Schema. Ακόμα και αν δεν πω κατά την δημιουργία του user στην βάση σε ποιο Schema ανήκει, by default αυτός θα ανήκει στο Schema dbo. Επίσης όταν δημιουργώ ένα object πχ έναν πίνακα και δεν λέω κατά την στιγμή της δημιουργίας του σε ποιο Schema αυτό θα ανήκει, by default αυτό πάει στο Schema στο οποίο ανήκει ο user που το δημιούργησε. Κάθε Schema έρχεται και κάθεται μεταξύ του database level του object level στην ιεραρχία του SQL Server. Αυτό σημαίνει ότι μπορώ να έχω περισσότερες δυνατότητες στον ορισμό του security πάνω στα objects της βάσης μου. Κάποια στιγμή θα σας πω για το security στον SQL Server και θα σας το εξηγήσω καλύτερα. Κάθε Schema επίσης έχει συγκεκριμένο owner. O οποίος μπορεί να είναι είτε συγκεκριμένος user είτε database role είτε application role. To Schema πλέον αντικαθιστά τον owner στο multi-part object name. Αυτό σημαίνει ότι στο παράδειγμα SELECT * FROM Northwind.antonis.Customers μέχρι την έλευση του SQL Server 2005 λέγαμε ότι ο antonis είναι ο χρήστης τώρα δεν είναι ο χρήστης αλλά το schema. Μερικές χρήσιμες συμβουλές για τα Schemas Ομαδοποίηση αντικειμένων σύμφωνα με το σκοπό τους πχ schema το οποίο περιέχει όλα τα αντικείμενα που αφορούν μια συγκεκριμένη ενότητα (π.χ web site). Διαχείριση του security σε επίπεδο βάσης με την χρήση των Schemas. Δηλαδή αντί να δίνω δικαιώματα σε επίπεδο χρήστη δίνω σε επίπεδο schema και ο χρήστης κληρονομεί αυτά μιας και ανήκει στο schema αυτό. Καλό είναι να μην είναι όλος ο κόσμος Schema owner. Ένας χρήστης είναι το ιδανικό. Επισης καλό θα είναι να μην είναι ο dbo ο owner για τα schemas τα οποία έχω μέσα στην βάση μου. Αυτά τα λίγα για τα Schemas και την πρακτική τους αξία στον SQL Server. Ελπίζω να έδωσα απαντήσεις στα ερωτήματα σας.
  25. Νομίζω ότι θέλει SP2 o SQL Server 2005 για να παίξει κάτι τέτοιο.
×
×
  • Create New...