Database
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Database

Tệp DSN và Phần mềm IRI

Một tệp DSN (tên nguồn cơ sở dữ liệu) cho phép nhiều người dùng kết nối với một cơ sở dữ liệu với thông tin trong một tệp phẳng. Nó được chương trình khách cơ sở dữ liệu sử dụng - trong trường hợp này là phần mềm trong IRI Workbench - để kết nối với cơ sở dữ liệu.

Tệp DSN mô tả các thuộc tính như:tên và thư mục nguồn dữ liệu, trình điều khiển kết nối, địa chỉ máy chủ, ID người dùng và mật khẩu. Nó được sử dụng bởi trình điều khiển ODBC để kết nối với bất kỳ cơ sở dữ liệu nào hỗ trợ giao thức đó. Thường được lưu trữ dưới dạng văn bản thuần túy, tệp DSN cung cấp:

  1. Thuận tiện - chúng loại bỏ nhu cầu định cấu hình kết nối cục bộ.
  2. Tính di động - chúng có thể được chia sẻ giữa những người dùng khác nhau và dễ dàng thay đổi.
  3. Bảo mật - chúng có thể được lưu trong các kho, như Git, với quyền truy cập hạn chế.

Các bước bên dưới trình bày cách tạo và sử dụng tệp DSN với tập lệnh công việc IRI (CoSort SortCL, v.v.) khi / PROCESS =ODBC được sử dụng để xử lý dữ liệu trong cơ sở dữ liệu quan hệ.

Bước 1 - Lấy và cài đặt trình điều khiển ODBC cho máy khách và máy chủ của bạn

Để tạo tệp DSN, hãy đảm bảo bạn có trình điều khiển ODBC phù hợp cho cơ sở dữ liệu của bạn và máy chủ của nó; ví dụ:MySQL trên Windows. Đối với mô tả này, giả sử rằng cơ sở dữ liệu và máy chủ nằm trên một máy cục bộ.

Bước 2 - Xác định vị trí và kiểm tra odbcinst . ini (trình kết nối) tệp

Trong mỗi trường hợp, bạn cần tệp odbcinst.ini để phục vụ như một trình kết nối giữa thư viện trình điều khiển ODBC của bạn và tệp DSN tham chiếu đến nó. Tệp này chứa thông tin vị trí / liên kết mà tệp DSN yêu cầu.

Tôi đang chạy MySQL trên PC chạy Windows 7. Với hầu hết các hệ điều hành khác, các bước này có thể khác và có thể được sửa đổi với thông tin tìm thấy trên các tìm kiếm giải thích cách kết nối với các loại máy chủ khác nhau.

Tệp odbcinst.ini của tôi tình cờ nằm ​​trong C:\ Windows. Nếu bạn không thể tìm thấy nó, bạn có thể lấy nó từ trang web chính thức của máy chủ đã chọn của bạn, nếu họ hỗ trợ cài đặt thông tin trong tệp odbcinst.ini.

Tệp odbcinst.ini sau được MySQL tạo bằng cách sử dụng cài đặt trình kết nối của chúng.

Bạn cũng có thể nhập thủ công các chi tiết giống như bạn thấy trong tài khoản của tôi:

[MySQL ODBC 5.3 Unicode Driver (32 bit)]
Driver=C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc5w.dll
Setup=C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc5S.dll
32Bit=1
[MySQL ODBC 5.3 ANSI Driver (32 bit)]
Driver=C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc5a.dll
Setup=C:\Program Files (x86)\MySQL\Connector ODBC 5.3\myodbc5S.dll
32Bit=1

Mỗi hệ điều hành sẽ khác nhau và tệp này có thể được thiết lập theo nhiều cách. Ví dụ:người dùng nhập thông tin sau vào tệp odbcinst.ini trên Linux:

[MySQL]
Description = ODBC for MySQL
Driver = /usr/lib/libmyodbc3.so
Setup = /usr/lib/libodbcmyS.so
FileUsage = 1

Sau khi tệp trình kết nối của bạn được định cấu hình đúng cách, hãy chuyển sang bước tiếp theo:

Bước 3 - Tạo tệp DSN

Đối với ví dụ này, giả sử có một cơ sở dữ liệu MySQL được gọi là “khách hàng” có một bảng được gọi là “trung thành” chứa tên và số điện thoại để theo dõi các khách hàng trung thành. Tôi đã nhập biến DSN theo cách thủ công trong ví dụ của mình, nhưng tiện ích quản trị viên ODBC của Windows có thể tạo tệp DSN cho bạn qua tab File DSN.

Các biến tối thiểu cần thiết cho bất kỳ tệp DSN nào là:

[ODBC]
DRIVER=
DATABASE=
SERVER=

Biến DRIVER đến từ tệp odbcinst.ini. Trong ví dụ Windows ở trên, bạn sẽ nhập Trình điều khiển Unicode MySQL ODBC 5.3 (32bit).

CƠ SỞ DỮ LIỆU là tên của cơ sở dữ liệu sẽ được truy cập, trong trường hợp này là “máy khách”.

Máy chủ là vị trí cơ sở dữ liệu. Trong trường hợp này, vị trí là “localhost” (vì cơ sở dữ liệu nằm trên máy cục bộ).

Tệp DSN đã hoàn thành sẽ chứa:

[ODBC]
DRIVER=MySQL ODBC 5.3 Unicode Driver (32 bit)
DATABASE=clients
SERVER=localhost

Lưu ý rằng thông số kỹ thuật DRIVER phải khớp chính xác với văn bản trong tiêu đề được đặt trong ngoặc đơn áp dụng cho trình điều khiển trong tệp odbcinst.ini. Tệp DSN phải chứa thông tin chi tiết về kết nối máy chủ cơ sở dữ liệu, cho dù tệp thi hành chạy trên máy khách thiết kế công việc hay máy chủ sản xuất / cơ sở dữ liệu.

Một tệp DSN có thể có nhiều thông tin hơn. Trong ví dụ này, ba dòng sẽ được thêm vào là:UID, PASSWORD và PORT. UID là bất kỳ ID người dùng nào có quyền truy cập vào máy chủ. Ở đây, UID là gốc và MẬT KHẨU là “mật khẩu”. Tôi đã sử dụng cổng MySQL mặc định, 3306.

Tệp DSN được cập nhật sẽ chứa:

[ODBC]
DRIVER=MySQL ODBC 5.3 Unicode Driver
DATABASE=clients
SERVER=localhost
UID=root
PASSWORD=mypassword
PORT=3306

Tệp DSN hiện có thể được lưu dưới bất kỳ tên nào có đuôi .dsn. Tôi đã chỉ định TEST.DSN.

Bất kỳ tập lệnh công việc IRI nào (dựa trên chương trình CoSort SortCL, bao gồm NextForm và FieldShield), đều có thể sử dụng thông tin tệp DSN khi / PROCESS =ODBC được chỉ định và khai báo tệp đầu vào hoặc đầu ra chứa tham số FILEDSN được đặt bằng tệp .DSN.

Tập lệnh công việc SortCL này sử dụng tệp DSN ở trên:

/INFILE="loyal;FILEDSN=C:\Users\LocalUser\Documents\Test.dsn;"
/PROCESS=ODBC
/ALIAS=loyal
/FIELD=(NAME, TYPE=ASCII, POSITION=1, SEPARATOR="\t", EXT_FIELD="name", PRECISION=0)
/FIELD=(PHONE, TYPE=ASCII, POSITION=2, SEPARATOR="\t", EXT_FIELD="phone", PRECISION=0)
/REPORT
/OUTFILE=stdout
/PROCESS=RECORD
/FIELD=(NAME, TYPE=ASCII, POSITION=1, SEPARATOR="\t", EXT_FIELD="name", PRECISION=0)
/FIELD=(PHONE, TYPE=ASCII, POSITION=2, SEPARATOR="\t", EXT_FIELD="phone", PRECISION=0)

Như ví dụ trên minh họa, đường dẫn tuyệt đối đến tệp DSN phải được chỉ định.

Tệp DSN có thể được đăng ký trong Sổ đăng ký kết nối dữ liệu giống như tất cả các kết nối ODBC khác. Đi tới Tùy chọn> Sổ đăng ký kết nối dữ liệu> Thêm . Chọn File DSN và nhập vị trí của tệp của bạn. Sau đó, kết nối này có thể được sử dụng trong trình hướng dẫn trên khắp Workbench.

Xem bài viết này về cách đăng ký kết nối cơ sở dữ liệu của bạn trong IRI Workbench và liên hệ với [email protected] nếu bạn cần trợ giúp.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách hiệu quả nhất để cắt giảm thời gian khỏi datetime là gì?

  2. Lệnh SQL

  3. Cách nối chuỗi trong SQL

  4. Các hàm cửa sổ lồng nhau trong SQL

  5. Cách xóa cơ sở dữ liệu trong cPanel