рд▓рд┐рдирдХреНрд╕ рдХреИрдЪ ODBC рдХреНрд▓рд╛рдЗрдВрдЯ

рдХреБрдЫ рд╕рд╛рд▓ рдкрд╣рд▓реЗ, рдЧреНрд░рд╛рд╣рдХ, рд╕рдВрдШреАрдп рдорд╣рддреНрд╡ рдХреЗ рдПрдХ рдмрдбрд╝реЗ рдЪрд┐рдХрд┐рддреНрд╕рд╛ рдХреЗрдВрджреНрд░, рдиреЗ рд╣рдореЗрдВ рдРрд╕реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрджреЗрд╢ рджрд┐рдпрд╛ рдерд╛ рдЬреЛ рд╕реВрдЪрдирд╛ рдХрд┐рдпреЛрд╕реНрдХ рдкрд░реЛрд╕рддреЗ рд╣реИрдВред рдмрд╛рд╣реНрдп рд░реВрдк рд╕реЗ, рдХрд┐рдпреЛрд╕реНрдХ рдПрдХ рднреБрдЧрддрд╛рди рдЯрд░реНрдорд┐рдирд▓ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ (рдХреЗрд╡рд▓ рдПрдХ рдмрд┐рд▓ рд╕реНрд╡реАрдХрд░реНрддрд╛ рдХреЗ рдмрд┐рдирд╛), рдЗрд╕рдХрд╛ рдореБрдЦреНрдп рдХрд╛рд░реНрдп, рдЬреИрд╕рд╛ рдХрд┐ рдирд╛рдо рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рд░реЛрдЧрд┐рдпреЛрдВ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдбреЙрдХреНрдЯрд░реЛрдВ рдХреА рдирд┐рдпреБрдХреНрддрд┐рдпреЛрдВ, рд╕реЗрд╡рд╛рдУрдВ рдФрд░ рдЙрдирдХреА рд▓рд╛рдЧрдд рдХрд╛ рд╢реЗрдбреНрдпреВрд▓, рдФрд░ рдЗрд╕реА рддрд░рд╣ред
рд╕реНрдкрд╖реНрдЯ рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдХрд┐рдпреЛрд╕реНрдХ рдХреЛ рдПрдХ рд╕рд░рд▓реАрдХреГрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рдЬрд┐рд╕реЗ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЕрдиреБрднрд╡реА рд╡реЗрдм-рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реНрд╕ рдХрд╛ рдПрдХ рдХрд░реНрдордЪрд╛рд░реА, рдЬреЛ php рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд░рдЦрддреЗ рд╣реИрдВ, рд╣рдордиреЗ рдЕрдкрдиреЗ рдореЗрдбрд┐рдХрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдЖрдпреЛрдЬрди рдХрд░рдХреЗ рдЗрд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реМрдВрдкрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ (рдЧрддрд┐ рдХреЗ рд▓рд┐рдП)ред рд╣рдордиреЗ рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП 3 рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛:
рд╡реЗрдм рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реНрд╕ рдиреЗ рдУрдбреАрдмреАрд╕реА рдХреЛ рдЕрдкрдиреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╕рдВрдж рдХрд┐рдпрд╛, рдФрд░ рдХрд┐рдпреЛрд╕реНрдХ рдХреЗ рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рдиреЗ рджрд┐рди рдХреА рд░реЛрд╢рдиреА рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рджреЗрдЦрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдЬрд▓реНрдж рд╣реА рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ (рдЖрд╢реНрдЪрд░реНрдп!) рдХрд┐ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рддрд╣рдд php рдХреЛрдб рдХрд╛рдо рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдкрд╛рд╕ рдерд╛, рд▓реЗрдХрд┐рди рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд, рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдЙрди рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рд╣рдорд╛рд░реА рдЪрд┐рдХрд┐рддреНрд╕рд╛ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдЧреНрд░рд╛рд╣рдХ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдВрдбреЛрдЬ 2008 рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЯреНрд░рд╛рдпрдб рдХреЗ рд╕рднреА рд╕рджрд╕реНрдп (Linux - Cach├й ODBC рдбреНрд░рд╛рдЗрд╡рд░ - php5) рдиреЗ рдХреБрдЫ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред рдореИрдВрдиреЗ рдЗрд╕ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдХреЗрдЪ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдХреНрд░рдо рджрд░реНрдЬ рдХрд┐рдпрд╛, рдЬрд┐рд╕реЗ рдореИрдВ рдЖрдкрдХреЗ рдзреНрдпрд╛рди рдореЗрдВ рд▓рд╛рддрд╛ рд╣реВрдВред

ODBC рдбреНрд░рд╛рдЗрд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ


рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдИ рддрд░реАрдХреЛрдВ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддреН:
рдЕрдВрддрд┐рдо рд╡рд┐рдХрд▓реНрдк рдХреЛ рд╕рдмрд╕реЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ .tar.gz рд╡рд┐рддрд░рдг рдФрд░ рдЗрд╕рдХреЗ рдкреВрд░реНрдг рдбреАрд╡реАрдбреА рд╕рдВрд╕реНрдХрд░рдг, рд╕рд╛рде рд╣реА Cach├й ODBC рдбреНрд░рд╛рдЗрд╡рд░ рд╡рд┐рддрд░рдг, рджреЛрдиреЛрдВ рд╕реЗ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред 2008.1 рдФрд░ 2009.1 ODBC рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ Cach├й рдХреЗ рд╕рд╛рде Ubuntu 9.10 рдФрд░ Fedora 8 рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ред
UNIX s рдХреЗ рд▓рд┐рдП Cach├й рд╡рд┐рддрд░рдг рдХреЗ рд╕рд╛рде рдбреАрд╡реАрдбреА рдорд╛рдЙрдВрдЯ рдХрд░реЗрдВ рдФрд░ ODBC рд╡рд┐рддрд░рдг рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЬрд╛рдПрдВ:
sudo mount /dev/dvd /media 

рдпрджрд┐ рдЖрдкрдХрд╛ рд╡рд┐рддрд░рдг рдбреАрд╡реАрдбреА рдкрд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ .tar.gz рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреИрд╢-2009.1.2.602-lnxrhx64.tar.gz), рдЗрд╕реЗ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдЕрдирдЬрд╝рд┐рдк рдХрд░реЗрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╡рд┐рддрд░рдг рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдбреНрд░рд╛рдЗрд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдВ (рдЬрд╣рд╛рдВ рдЖрдк рд╕рд╣рдЬ рд╣реЛрдВ)ред рдЗрд╕реЗ $ рдлрд╝реЛрд▓реНрдбрд░ рджреНрд╡рд╛рд░рд╛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВред
 mkdir $folder 

рд╡рд┐рддрд░рдг рдХрд┐рдЯ рдореЗрдВ рдЕрдкрдиреЗ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд▓рд┐рдП рдбреНрд░рд╛рдЗрд╡рд░ рдвреВрдВрдвреЗрдВ:
 cd /media/dist/ODBC 

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ x86_x64 рд╣реИ, рддреЛ ODBC-lnxrhx64.tar.gz рдЪреБрдиреЗрдВ, рдпрджрд┐ x86_x32, рддреЛ ODBC-lnxrhx86.tar.gzред рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЪрдпрдирд┐рдд $ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХреЙрдкреА рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдЗрд╕рдореЗрдВ рдЕрдирдЬрд╝рд┐рдк рдХрд░реЗрдВ, рдлрд┐рд░ рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдЪрд▓рд╛рдПрдВред рд╕реНрдерд╛рдкрдирд╛ рдПрдХ рд╣реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реЛрдЧреА, рдХреЛрдИ рдкреНрд░рд╢реНрди рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
 cd $folder tar -xvf ODBC-lnxrhx86.tar.gz ./ODBCinstall 

рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛


рдЗрд╕рдХреЗ рдмрд╛рдж, рдорд┐рдЧ рдЬрд╛рдирд╛
 cd $folder/mgr 

рдФрд░ рдбреЗрдЯрд╛ рд╡рд┐рд╡рд░рдг рд╡рд┐рд╡рд░рдг рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдореЗрдВ рдбреНрд░рд╛рдЗрд╡рд░, рд╣реЛрд╕реНрдЯ, рдкреЛрд░реНрдЯ (рдФрд░ рд╕рдВрднрд╡рддрдГ рдкрд╛рд╕рд╡рд░реНрдб) рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдмрджрд▓рдХрд░ cacheodbc.ini рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
 [Samples] Driver = $folder/bin/libcacheodbc.so Description = Cache ODBC driver Host = IP-  DNS-  Cach├й Namespace = SAMPLES UID = _SYSTEM Password = SYS ( Cach├й    ,   ,   ) Port = TCP-  Cach├й ( 1972) 

рдбреНрд░рд╛рдЗрд╡рд░ рдФрд░ рдирдореВрдиреЗ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЪрд▓рд╛рдПрдБ:
 cd $folder/dev/odbc/samples/select ./select.sh #  select   Samples.Person 

рдПрдХ рдЫреЛрдЯреА рдЯрд┐рдкреНрдкрдгреА рдпрд╣рд╛рдВ рдЙрдкрдпреБрдХреНрдд рд╣реИред рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд╛рдж, рд▓рд┐рдирдХреНрд╕ рдЪрд╛рд▓рдХ рдХреЗ рд▓рд┐рдП Cach├й ODBC рджреЛ рджрд┐рд╢рд╛рдУрдВ рдореЗрдВ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ: libcacheodbc.so (8-bit) рдФрд░ libcacheodbciw.so (рдпреВрдирд┐рдХреЛрдб)ред рд╣рдорд╛рд░реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ, рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд (рдХреИрдЪ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди) рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ (php рдПрдкреНрд▓рд┐рдХреЗрд╢рди) рджреЛрдиреЛрдВ рд╣реА 8-рдмрд┐рдЯ (CP1251 рдПрдиреНрдХреЛрдбрд┐рдВрдЧ) рдереЗ, рдЗрд╕рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рд╣рдо рдХреЗрд╡рд▓ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ 8-рдмрд┐рдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред

Apache2 / php5 рд╕реЗ Cach├й ODBC рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ (DSNs) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛


рд╕реНрдерд╛рдиреАрдпрдХрд░рдг CP1251 рдХреА рд╕реНрдерд╛рдкрдирд╛

рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ 8-рдмрд┐рдЯ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, Cach├й ODBC рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдпрд╛ рдЧрдпрд╛ рдкрд░рд┐рдгрд╛рдо рд╕реЗрдЯ рд╣рдореЗрд╢рд╛ CP1251 рдПрдирдХреЛрдбреЗрдб рд╣реЛрддрд╛ рд╣реИ (рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ 8-рдмрд┐рдЯ (рд╕реНрдерд╛рдиреАрдпрдХрд░рдг RUW8) рдпрд╛ рдпреВрдирд┐рдХреЛрдб (RWW))ред рдпрд╣ рд╣рдореЗрдВ рдХрд╛рдлреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓ рд▓рдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбреЗрдЯрд╛ рдореЗрдВ рдмрд╣реБрднрд╛рд╖рд╛рд╡рд╛рдж рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рдереАред рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рдЙрдЪрд┐рдд рд╕реНрдерд╛рдиреАрдпрдХрд░рдг рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Ubuntu 9.10 рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
 sudo locale-gen ru_RU.CP1251 locale -a | grep 1251 

рд╕реНрдерд╛рдиреАрдпрдХрд░рдгреЛрдВ рдХреА рд╕реВрдЪреА рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:
 ru_RU.cp1251 

RedHat рдЬреИрд╕реЗ рд╡рд┐рддрд░рдг (рдлреЗрдбреЛрд░рд╛ рдХреЛрд░ 8, CentOS 5.x рдкрд░ рдкрд░реАрдХреНрд╖рдг) рдкрд░, рд╕реНрдерд╛рдиреАрдпрдХрд░рдг рдЗрд╕ рддрд░рд╣ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
 sudo localedef --no-archive -c -f CP1251 -i ru_RU ru_RU.CP1251 

Ru_RU.cp1251 рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдЗрд╕реА рддрд░рд╣ рдХреА рдЬрд╛рддреА рд╣реИ:
 locale -a | grep 1251 

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рддрд╛рдХрд┐ рдЖрдк рдбреАрдПрд╕рдПрди рдХреЛ php рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХреЗрдВ, рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ ODBC рдореИрдиреЗрдЬрд░ рдореЗрдВ рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЬреНрдЮрд╛рдд рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЛ рд╣реИрдВ: iodbc рдФрд░ unixodbcред рдкрд╣рд▓рд╛ рдЕрдзрд┐рдХ рдмрд╣реБрдореБрдЦреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдкрдХреЛ Cach├й ODBC рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рджреЛрдиреЛрдВ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ: 8 рдмрд┐рдЯреНрд╕ рдФрд░ рдпреВрдирд┐рдХреЛрдбред рджреВрд╕рд░рд╛ рдЕрдзрд┐рдХ рд╡реНрдпрд╛рдкрдХ рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИ, рд▓реЗрдХрд┐рди (рдХреИрдЪ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ) рдХреЗрд╡рд▓ 8 рдмрд┐рдЯреНрд╕ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рддрд┐рдмрдВрдз рдирд╣реАрдВ рдерд╛, рдЗрд╕рд▓рд┐рдП рдпреВрдирд┐рдХреНрд╕рдмреЗрдХ рдХреЛ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдиреАрдЪреЗ Ubuntu 9.10 рдореЗрдВ рдЗрд╕рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХрд╛ рд╡рд┐рд╡рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

ODBC Unixodbc рдкреНрд░рдмрдВрдзрдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ (Ubuntu 9.10 рдкрд░)

рддрдХрдиреАрдХ рдХреЛ ru.php.net/manual/en/function.odbc-connect.php рд╕реЗ рдЙрдзрд╛рд░ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЕрд░реНрдерд╛рддреН, рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ:
 sudo apt-get install <-> 

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреИрдХреЗрдЬ:
 apache2 apache2-mpm-prefork apache2-utils apache2.2-common libapache2-mod-php5 odbcinst1debian1 php5 php5-cli php5-common php5-odbc unixodbc 

рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ рдЕрдкрд╛рдЪреЗ:
 sudo /etc/init.d/apache2 restart 

рдЪрд╛рд▓рдХ рдФрд░ DSN Cach├й ODBC рдХреЛ unixodbc рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░реЗрдВ

рдпрд╛рдж рд╣реИ рдХрд┐ Cach├й ODBC рдХреЛ $ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рднрд╛рдЧреЛ:
 cd $folder/dev/odbc/redist/unixodbc 

Odbcinst_template.ini рдХреЛ odbcinst.ini рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ рдФрд░ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбреНрд░рд╛рдЗрд╡рд░ рдкрде ($ рдлрд╝реЛрд▓реНрдбрд░ / рдмрд┐рди / libcacheodbc.so) рдХреЛ рджреЛ рдмрд╛рд░ рд▓рд┐рдЦреЗрдВред Odbc_template.ini рдХреЛ odbc.ini рдореЗрдВ рдХреЙрдкреА рдХрд░реЗрдВ рдФрд░ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рдЕрдиреБрд░реВрдк рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ IP, Port, Namespace, UID рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд▓рд┐рдЦреЗрдВред рдкреНрд░рддреНрдпреЗрдХ DSN рдХреЗ рд▓рд┐рдП рджреЛрд╣рд░рд╛рдПрдВ, рдпрджрд┐ рдХрдИ рд╣реИрдВред рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдПрдХ рдирдореВрдирд╛ рд╕реНрд░реЛрдд рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ (рдЗрд╕рдХреА рдЦрд░реАрдж odbc_template.ini рдореЗрдВ рдореМрдЬреВрдж рд╣реИ) рдЙрд╕реА рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ "рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ" рдЕрдиреБрднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВред рдПрдХ DSN рднреА рдмрдирд╛рдПрдБ рдЬреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреНрд╖реЗрддреНрд░ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ (рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЗрд╕реЗ QMS рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ) [рдирдореВрдиреЗ] рдЕрдиреБрднрд╛рдЧ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдХрд░ odbc.ini рдореЗрдВ рдПрдХ рдирдпрд╛ рдЕрдиреБрднрд╛рдЧ рдЬреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ред рдЙрд╕ рдХреНрд╖реЗрддреНрд░ рдХрд╛ рдирд╛рдо рдмрддрд╛рдПрдВ рдЬрд┐рд╕реЗ рдХреНрд╖реЗрддреНрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдкрд░рд┐рд╡рд░реНрддрди - рдирдореВрдиреЗ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ - рдмрд╕ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░:
 [QMS] ... Namespace = QMS 

рд╕рднреА DSNs рдХреЛ рдПрдХ рд╣реА odbc.ini рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╣реЛрд╕реНрдЯ, рдиреЗрдорд╕реНрдкреЗрд╕, рдкреЛрд░реНрдЯ, рдпреВрдЖрдИрдбреА рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрд░реНрдерд╛рддреН, рдЯреЗрдмрд▓ рдФрд░ / рдпрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рд╡рд╛рд▓реЗ рдХреИрдЪреА рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЗрди рд╡рд┐рд╡рд░рдгреЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдпреЛрдЧреНрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рддреНрдпрд╛рдкрди рд╡рд┐рдзрд┐, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╕рдВрдЧреНрд░рд╣реАрдд рдбреЗрдЯрд╛ рдХреЗ рдкреНрд░рдХрд╛рд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред рдпрджрд┐% Service_Bindings рд╕реЗрд╡рд╛ рдЖрдкрдХреЗ Cach├й рдореЗрдВ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рдмрд┐рдирд╛ рд▓реЙрдЧрд┐рди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рддреЛ рдЖрдк UID рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд╡рд┐рд╡рд░рдг рдХреЛ рдЦрд╛рд▓реА рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ (рдпреЗ рджреЛрдиреЛрдВ рдлрд╝реАрд▓реНрдб рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ)ред Cache рдХреЗ рдХреБрдЫ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ, odbc_template.ini рдЙрджрд╛рд╣рд░рдг рд╕реБрдкрд░рдпреБрд╕рд░ _system рдХреЗ рд▓рд┐рдП рдПрдХ рдЧрд▓рдд рдкрд╛рд╕рд╡рд░реНрдб рдорд╛рди рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ Cach├й (рд╕рдВрдХреЗрдд: рдкрд╛рд╕рд╡рд░реНрдб рдХреЗрд╕-рд╕рдВрд╡реЗрджреА) рдореЗрдВ рдиреНрдпреВрдирддрдо рд╕реБрд░рдХреНрд╖рд╛ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╕рдордп рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдПрдХ рд╕реЗ рднрд┐рдиреНрди рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, Cach├й рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдЕрдВрдд рдореЗрдВ, рдбреАрдПрд╕рдПрди рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо / рдкрд╛рд╕рд╡рд░реНрдб рд╕рд╣реЗрдЬрдирд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдХреЗрд╡рд▓ рдкрд░реАрдХреНрд╖рдг рдХреЗ рджреМрд░рд╛рди рдХрд░рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рдЬрд╛рддреА рд╣реИ; рдСрдкрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди, рдЙрдиреНрд╣реЗрдВ рдУрдбреАрдмреАрд╕реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп рдЙрдиреНрд╣реЗрдВ рдПрдХ php рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ "рд╕реАрд╡реЗ" рдХрд░рдиреЗ рдФрд░ рд╕рд░реНрд╡рд░ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреА рдЬрд╛рддреА рд╣реИред
рдЕрдЧрд▓рд╛, рдбреНрд░рд╛рдЗрд╡рд░ рдФрд░ рд╕рднреА рдЙрдкрд▓рдмреНрдз DSNs рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░реЗрдВ:
 sudo odbcinst -i -d -f odbcinst.ini sudo odbcinst -i -s -l -f odbc.ini 

рдкрдВрдЬреАрдХрд░рдг рдХреЗ рдмрд╛рдж, рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ /etc/odbc.ini рдФрд░ /etc/odbcinst.ini рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреА рдЪрд╛рд╣рд┐рдПред

Php рдореЗрдВ рдкрд░реАрдХреНрд╖рдг

рдпрджрд┐ рдЖрдкрдиреЗ рд╕рдм рдХреБрдЫ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ SAMPLES рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рд╣реИ, рддреЛ Cach ODBC рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд $ рдлрд╝реЛрд▓реНрдбрд░ / dev / odbc / рдирдореВрдиреЗ / php / sample.php рдЙрджрд╛рд╣рд░рдг рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдЖрдк рдХреБрдЫ рд░реВрд╕реА рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдФрд░ рдЕрдВрдд рдореЗрдВ рдЕрдкрдиреЗ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рд╢реБрд░реВ рдХрд░реЗрдВ), рддреЛ рдЕрдкрдиреЗ php рдХреЛрдб рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдХрд░реАрдм рд╡рд░реНрддрдорд╛рди рд╕реНрдерд╛рдиреАрдпрдХрд░рдг CP1251 рдбрд╛рд▓рдирд╛ рди рднреВрд▓реЗрдВ:
 echo setlocale(LC_ALL, 'ru_RU.CP1251', 'rus_RUS.CP1251', 'Russian_Russia.1251'); 


рдирд┐рд╖реНрдХрд░реНрд╖


рдЕрдВрдд рдореЗрдВ, рд╕рдорд╛рдзрд╛рди рдХреА рд╕рд╛рдорд╛рдиреНрдп рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╢рдмреНрдж (рдХрд┐рдпреЛрд╕реНрдХ рдкрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ - php рдПрдкреНрд▓рд┐рдХреЗрд╢рди - рдХреИрдЪ рдбреЗрдЯрд╛рдмреЗрд╕)ред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЗрд╕рдиреЗ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдХреИрдЪ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реНрд╕ рдХреЗ рдмреАрдЪ рд╢реНрд░рдо рд╡рд┐рднрд╛рдЬрди рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдпрд╛ рдФрд░ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЬреАрд╡рди рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдпрд╛, рдЬрдмрдХрд┐ рдЙрдирдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдФрд░ рдЖрд░рд╛рдорджрд╛рдпрдХ рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рд╕рдВрд░рдХреНрд╖рдг рдХрд┐рдпрд╛ред рдЙрд╕реА рд╕рдордп, рд╣рдо, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╕рдордЭ рдЧрдП рдХрд┐ рдкреНрд░рддреНрдпрдХреНрд╖ рдмрд╛рддрдЪреАрдд (рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ - рдХреИрд╢реЗ рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб) рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЕрдзрд┐рдХ рдкреНрд░рднрд╛рд╡реА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдпрд╣ рд╕рдордЭ рдХреЗрд╡рд▓ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рддреЗрдЬ рд╣реБрдИ, рдФрд░ рд╣рдорд╛рд░реА рдЪрд┐рдХрд┐рддреНрд╕рд╛ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рдПрдХ рдкреВрд░реА рддрд░рд╣ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╡реЗрдм-рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рд╣реБрдИред
рдлрд┐рд░ рднреА, Cach├й рдХреЗ рд▓рд┐рдП ODBC рдкрд╣реБрдВрдЪ рдЕрднреА рднреА рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд "рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХ рдЖрд▓рд╛" рдкрд░ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐:

Source: https://habr.com/ru/post/In156321/


All Articles