mariadbconnect引擎连接sqlserver
程序员文章站
2022-05-07 20:16:51
网上很多使用mariadb的connect引擎连接oracle,唯独没有mariadb使用connect引擎连接sqlserver,特小记一篇.
---1.使用最新版co...
网上很多使用mariadb的connect引擎连接oracle,唯独没有mariadb使用connect引擎连接sqlserver,特小记一篇. ---1.使用最新版connect # mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 5 Server version: 10.1.10-MariaDB-log Source distribution Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. #rpm2cpio MariaDB-10.1.10-centos6-x86_64-connect-engine.rpm | cpio --extract --make-directories #cp /soft/usr/lib64/mysql/plugin/ha_connect.so /data/mysql/lib/plugin/ root@node01 13:30:33>INSTALL SONAME 'ha_connect'; Query OK, 0 rows affected (0.00 sec) # ls /data/mysql/lib/plugin/ adt_null.so dialog.so ha_federatedx.so metadata_lock_info.so semisync_master.so auth_0x0100.so example_key_management.so ha_innodb.so mypluglib.so semisync_slave.so auth_pam.so file_key_management.so ha_mroonga.so mysql_clear_password.so server_audit.so auth_socket.so ha_archive.so handlersocket.so qa_auth_client.so simple_password_check.so auth_test_plugin.so ha_blackhole.so ha_spider.so qa_auth_interface.so sql_errlog.so daemon_example.ini ha_connect.so ha_test_sql_discovery.so qa_auth_server.so wsrep_info.so debug_key_management.so ha_example.so libdaemon_example.so query_cache_info.so dialog_examples.so ha_federated.so locales.so query_response_time.so --权限重要 #chown mysql:mysql -R /data/mysql root@node01 15:18:54>show engines \G; *************************** 1. row *************************** Engine: MRG_MyISAM Support: YES Comment: Collection of identical MyISAM tables Transactions: NO XA: NO Savepoints: NO *************************** 2. row *************************** Engine: MEMORY Support: YES Comment: Hash based, stored in memory, useful for temporary tables Transactions: NO XA: NO Savepoints: NO *************************** 3. row *************************** Engine: MyISAM Support: YES Comment: MyISAM storage engine Transactions: NO XA: NO Savepoints: NO *************************** 4. row *************************** Engine: CSV Support: YES Comment: CSV storage engine Transactions: NO XA: NO Savepoints: NO *************************** 5. row *************************** Engine: CONNECT Support: YES Comment: Management of External Data (SQL/MED), including many file formats Transactions: NO XA: NO Savepoints: NO *************************** 6. row *************************** Engine: SEQUENCE Support: YES Comment: Generated tables filled with sequential values Transactions: YES XA: NO Savepoints: YES *************************** 7. row *************************** Engine: SPHINX Support: YES Comment: Sphinx storage engine 2.2.6-release Transactions: NO XA: NO Savepoints: NO *************************** 8. row *************************** Engine: InnoDB Support: DEFAULT Comment: Percona-XtraDB, Supports transactions, row-level locking, foreign keys and encryption for tables Transactions: YES XA: YES Savepoints: YES *************************** 9. row *************************** Engine: PERFORMANCE_SCHEMA Support: YES Comment: Performance Schema Transactions: NO XA: NO Savepoints: NO *************************** 10. row *************************** Engine: Aria Support: YES Comment: Crash-safe tables with MyISAM heritage Transactions: NO XA: NO Savepoints: NO 10 rows in set (0.00 sec) --2.自动安装unixODBC 2.3.0:(网络通畅的情况下) [root@node01 msodbcsql-11.0.2270.0]# ./build_dm.sh Build unixODBC 2.3.0 DriverManager script Copyright Microsoft Corp. In order to use the Microsoft ODBC Driver 11 for SQL Server on Linux, the unixODBC DriverManager must be installed on your computer. unixODBC DriverManager is a third-party tool made available by the unixODBC Project. To assist you in the installation process, this script will attempt to download, properly configure, and build the unixODBC DriverManager from https://www.unixodbc.org/ for use with the Microsoft ODBC Driver 11 for SQL Server ODBC Driver on Linux. Alternatively, you can choose to download and configure unixODBC DriverManager from https://www.unixodbc.org/ yourself. Note: unixODBC DriverManager is licensed to you under the terms of an agreement between you and the unixODBC Project, not Microsoft. Microsoft does not guarantee the unixODBC DriverManager or grant any rights to you. Prior to downloading, you should review the license for unixODBC DriverManager at https://www.unixodbc.org/. The script is provided as a convenience to you as-is, without any express or implied warranties of any kind. Microsoft is not liable for any issues arising out of your use of the script. Enter 'YES' to have this script continue: YES Verifying processor and operating system ................................... OK Verifying wget is installed ................................................ OK Verifying tar is installed ................................................. OK Verifying make is installed ................................................ OK Downloading unixODBC 2.3.0 DriverManager --手动安装unixODBC 2.3.0:(网络不好的情况下 )--推荐 tar xvzf unixODBC-2.3.1.tar.gz. CPPFLAGS="-DSIZEOF_LONG_INT=8" export CPPFLAGS ./configure --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc --enable-gui=no --enable-drivers=no --enable-iconv --with-iconv-char-enc=UTF8 --with-iconv-ucode-enc=UTF16LE make make install touch /etc/odbcinst.ini touch /etc/odbc.ini ---3.安装微软odbc驱动 [root@node01 soft]# ls msodbcsql-11.0.2270.0.tar.gz [root@node01 soft]# tar msodbcsql-11.0.2270.0.tar.gz tar: Old option `b' requires an argument. Try `tar --help' or `tar --usage' for more information. [root@node01 soft]# tar xvzf msodbcsql-11.0.2270.0.tar.gz msodbcsql-11.0.2270.0/ msodbcsql-11.0.2270.0/include/ msodbcsql-11.0.2270.0/include/msodbcsql.h msodbcsql-11.0.2270.0/bin/ msodbcsql-11.0.2270.0/bin/SQLCMD.rll msodbcsql-11.0.2270.0/bin/BatchParserGrammar.dfa msodbcsql-11.0.2270.0/bin/BatchParserGrammar.llr msodbcsql-11.0.2270.0/bin/bcp.rll msodbcsql-11.0.2270.0/bin/bcp-11.0.2270.0 msodbcsql-11.0.2270.0/bin/sqlcmd-11.0.2270.0 msodbcsql-11.0.2270.0/WARNING msodbcsql-11.0.2270.0/build_dm.sh msodbcsql-11.0.2270.0/lib64/ msodbcsql-11.0.2270.0/lib64/msodbcsqlr11.rll msodbcsql-11.0.2270.0/lib64/libmsodbcsql-11.0.so.2270.0 msodbcsql-11.0.2270.0/install.sh msodbcsql-11.0.2270.0/LICENSE msodbcsql-11.0.2270.0/README msodbcsql-11.0.2270.0/docs/ msodbcsql-11.0.2270.0/docs/en_US.tar.gz [root@node01 soft]# ls msodbcsql-11.0.2270.0 msodbcsql-11.0.2270.0.tar.gz [root@node01 soft]# cd msodbcsql-11.0.2270.0 [root@node01 msodbcsql-11.0.2270.0]# ls bin build_dm.sh docs include install.sh lib64 LICENSE README WARNING # cd msodbcsql-11.0.2270.0 # ls bin build_dm.sh docs include install.sh lib64 LICENSE README unixODBC-2.3.1.tar.gz WARNING ./install.sh verify ./install.sh install --4.安装完成测试测试 # odbcinst -q -d -n "ODBC Driver 11 for SQL Server" [ODBC Driver 11 for SQL Server] Description=Microsoft ODBC Driver 11 for SQL Server Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-11.0.so.2270.0 Threading=1 UsageCount=1 Trace=Yes TraceFile=/var/log/odbc.log # odbcinst -j unixODBC 2.3.0 DRIVERS............: /etc/odbcinst.ini SYSTEM DATA SOURCES: /etc/odbc.ini FILE DATA SOURCES..: /etc/ODBCDataSources USER DATA SOURCES..: /root/.odbc.ini SQLULEN Size.......: 8 SQLLEN Size........: 8 SQLSETPOSIROW Size.: 8 # sqlcmd -S 192.168.1.143 -U sa -P sa01 -d master -Q 'select "Hello World"' ----------- Hello World # sqlcmd -S 192.168.1.143 -U sa -P sa01 -d master -Q 'select name from sys.databases' name -------------------------------------------------------------------------------------------------------------------------------- master tempdb model msdb test DebugMonitor InternalDebugMonitor JinriMonitor #vi /etc/template.ini [dsn01] Description = linux to sqlserver Driver = ODBC Driver 11 for SQL Server Server = 192.168.1.143 Port = 1433 UID = sa PWD = sa01 Database = master Trace = Yes TraceFile = /var/log/odbc.log #odbcinst -i -s -l -f /etc/template.ini # isql -v dsn01 sa sa01 +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ SQL> select name from sys.databases; +---------------------------------------------------------------------------------------------------------------------------------+ | name | +---------------------------------------------------------------------------------------------------------------------------------+ | master | | tempdb | | model | | msdb | | test | | DebugMonitor | | InternalDebugMonitor | | JinriMonitor | +---------------------------------------------------------------------------------------------------------------------------------+ SQLRowCount returns 0 8 rows fetched # sudo -u mysql isql -v dsn01 sa sa01 +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ SQL> ---5.新建connect引擎的表 create table t01 engine=CONNECT table_type=ODBC block_size=10 tabname='t01' connection='DSN=dsn01; UID=sa; PWD=sa01'; root@node01 18:30:56>create table t01 -> engine=CONNECT -> table_type=ODBC -> block_size=10 -> tabname='t01' -> connection='DSN=dsn01; UID=sa; PWD=sa01'; Query OK, 0 rows affected (0.26 sec) root@node01 18:30:58>select * from t01; +------+---------+ | sid | sname | +------+---------+ | 101 | ocpyang | +------+---------+ 1 row in set (0.04 sec) ---6.验证 --mysql端插入数据 root@node01 18:37:00>insert into t01 values(102,'jyl'); Query OK, 1 row affected (0.48 sec) root@node01 18:37:12>commit; Query OK, 0 rows affected (0.00 sec) root@node01 18:37:14>select * from t01; +------+---------+ | sid | sname | +------+---------+ | 101 | ocpyang | | 102 | jyl | +------+---------+ 2 rows in set (0.02 sec)
上一篇: ORACLE异常错误处理教程
下一篇: 关于自定义表类型遇到的问题~
推荐阅读
-
SQLServer安装和JDBC连接SQLServer
-
SQL设置SQLServer最大连接数查询语句
-
sqlserver2005-PHP通过ODBC连接SQLSERVER2005 查询不了中文
-
改变SQLServer2008设置 开启远程连接
-
PHP连接SQLServer2005方法及代码
-
iis+php+SQLServer连接数据库有关问题
-
SQL Server2005与SQLServer2008并存时, 怎样连接到2008
-
sqlserver 内连接左连接,右连接,全连接
-
win8 SqlServer2005连接,提示到主机的 TCP/IP 连接失败解决方
-
配置 SQLServer2005 以允许远程连接