Συμπτώματα
Ας υποθέσουμε ότι δημιουργείτε μια εξωτερική προέλευση δεδομένων στη βάση δεδομένων Oracle 12,2 ή νεότερες εκδόσεις. Όταν προσπαθείτε να δημιουργήσετε έναν εξωτερικό πίνακα σε αυτό το αρχείο προέλευσης δεδομένων στον SQL Server 2019, ενδέχεται να λάβετε το ακόλουθο μήνυμα σφάλματος:
MSG 105082, επίπεδο 16, κατάσταση 1, LineNumber line
105082; Γενικό σφάλμα ODBC: [Microsoft] [πρόγραμμα οδήγησης πρωτοκόλλου ODBC Oracle Wire] [Oracle] ORA-28040: δεν υπάρχει πρωτόκολλο ελέγχου ταυτότητας που να ταιριάζει επιπλέον σφάλμα <2>: ErrorMsg: [Microsoft] [πρόγραμμα οδήγησης πρωτοκόλλου ODBC Oracle Wire] [Oracle] ORA-28040: δεν υπάρχει αντίστοιχο πρωτόκολλο ελέγχου ταυτότητας, SqlState: HY000, NativeError: 28040.
Αιτία
Αυτό το πρόβλημα παρουσιάζεται επειδή ο SQL Server 2019 δεν χρησιμοποιεί το πιο πρόσφατο ODBC έκδοση προγράμματος οδήγησης για σύνδεση με το Oracle η βάση δεδομένων και το τρέχον πρόγραμμα οδήγησης δεν έχουν ρυθμιστεί με νέους μηχανισμούς ασφαλείας.
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα πρόβλημα στα προϊόντα της Microsoft που παρατίθενται στην ενότητα "ισχύει για".
Επίλυση
Αυτή η επιδιόρθωση περιλαμβάνεται στην παρακάτω αθροιστική ενημερωμένη έκδοση για τον SQL Server:
Πληροφορίες για τις αθροιστικές ενημερώσεις για τον SQL Server:
Κάθε νέα αθροιστική ενημέρωση για τον SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις επιδιορθώσεις ασφαλείας που συμπεριλήφθηκαν στην προηγούμενη αθροιστική ενημέρωση. Ανάληψη ελέγχου των πιο πρόσφατων αθροιστικών ενημερώσεων για τον SQL Server:
Λύση
Για να επιλύσετε αυτό το ζήτημα, μπορείτε να επεξεργαστείτε το αρχείο Sqlnet. ORA στο διακομιστή Oracle για να προσθέσετε το παρακάτω
sqlnet.allowed_logon_version_server=8
Αναφορές
Μάθετε περισσότερα σχετικά με την ορολογία που χρησιμοποιεί η Microsoft για την περιγραφή ενημερώσεων λογισμικού.
Αποποίηση ευθυνών για πληροφορίες τρίτων κατασκευαστώνΤα προϊόντα άλλων κατασκευαστών που αναφέρονται σε αυτό το άρθρο έχουν κατασκευαστεί από εταιρείες ανεξάρτητες από τη Microsoft. Η Microsoft δεν παρέχει καμία εγγύηση, ρητή ή άλλη, σχετικά με τις επιδόσεις ή την αξιοπιστία αυτών των προϊόντων.