sql跨数据库如何访问linux 下mysql_SQL跨数据库访问linux或windows的mysql和定时作业 (转)...
1、遠(yuǎn)程訪問數(shù)據(jù)庫大致模型
大致有2種方法:
第一種在ODBC配置好ODBC的數(shù)據(jù)源,然后與SQL鏈接服務(wù)器結(jié)合(SQL鏈接服務(wù)器不需要填寫訪問接口字符串)
第二種在SQL鏈接服務(wù)器直接配置好ODBC的Driver字符串。
這里主要介紹第一種(第二種在‘訪問接口字符串’加上字符串即可)
2、mysql在win7、linux上如何設(shè)置:
2.1、分配權(quán)限(linux和win7)
進(jìn)行mysql命令行,進(jìn)行分配權(quán)限、執(zhí)行
GRANTALLPRIVILEGESON*.*TO'Lucy'@'192.168.1.101'IDENTIFIEDBY'123'WITHGRANTOPTION;
2.2、打開3306端口
2.2.1、在win7上,只要在‘入站規(guī)則’上建立一個3306端口即可。
控制面板=>管理工具=>高級安全的Windows防火墻=>入站規(guī)則
然后新建規(guī)則=>選擇‘端口’=>在‘特定本地端口’上輸入一個‘3306’=>選擇‘允許連接’=>選擇‘域’、‘專用’、‘公用’
=>給個名稱,如:mysqlinput
2.2.2、在linux的ubuntu上,對mysql的配置文件進(jìn)行配置均可。
按F3(打開命令行)=>輸入"sudo vi?/etc/mysql/my.cnf"(用vim打開)=>
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
注釋掉bind-address均可,即#bind-address = 127.0.0.1,表示允許通過遠(yuǎn)程端口3306訪問。
=>重啟mysql,即在命令行輸入"sudo /etc/init.d/mysql restart"
3、配置ODBC
3.1、控制面板=>管理工具=>數(shù)據(jù)源(ODBC)=>系統(tǒng)DSN
選測試Test一下,連接到對方mysql數(shù)據(jù)庫成功,所以才可以顯示information_schema,mysql,mysql...這些數(shù)據(jù)庫,這里選擇test。
3.2、數(shù)據(jù)源是ZYF,則ODBC為以下情況
4、創(chuàng)建鏈接服務(wù)器
4.1、因為在ODBC建立的數(shù)據(jù)源(data source name)是ZYF,所以這里是ZYF
(拓展一:如果你不想定義ODBC,可以在‘訪問接口字符串’直接通過加上以下字符串:
DRIVER={MySQL ODBC 3.51 Driver};SERVER=192.168.1.100;PORT=3306;DATABASE=information_schema;USER=root;PASSWORD=123;STMT=set? names? utf8
但是這里不用加,因為你已經(jīng)定義了一個ODBC了。
拓展二:如果你不想定義一個ODBC,也不想通過鏈接服務(wù)器。當(dāng)然也可以直接用字符串執(zhí)行:
SELECT * FROM OPENROWSET('MSDASQL', 'DRIVER={MySQL ODBC 3.51 Driver};SERVER=192.168.1.101;PORT=3306;DATABASE=information_schema;USER=Lucy;PASSWORD=123;STMT=set? names? utf8', 'select * from CHARACTER_SETS')
)
4.2、測試一下。
執(zhí)行select * from OPENQUERY (CONNECTMYSQL,'select * from a');
5、建立定時作業(yè)
常規(guī)=>步驟=>計劃
步驟中:
6、運行效果:
7、總結(jié):
SQL數(shù)據(jù)庫遠(yuǎn)程訪問MySQL數(shù)據(jù)和定時作業(yè),主要是為了不同數(shù)據(jù)庫開發(fā),為了達(dá)到不同數(shù)據(jù)庫資料共享性而操作的(達(dá)到如果一個企業(yè)要用2款軟件,如一款在財務(wù)上突出優(yōu)勢,另一款在生產(chǎn)流水線突出優(yōu)勢,數(shù)據(jù)庫如果是SQL和MySQL。這時可通過定時作業(yè)來實現(xiàn)數(shù)據(jù)上的一致性)
(在上一篇中)不用程序端(C#)實現(xiàn)數(shù)據(jù)庫遠(yuǎn)程訪問原因,一方面如果程序端改動,需要增大程序端的維護(hù)和編寫;
另一方面,進(jìn)行數(shù)據(jù)庫和數(shù)據(jù)庫之間的訪問,也解決了數(shù)據(jù)庫數(shù)據(jù)共享的一致性。
總結(jié)
以上是生活随笔為你收集整理的sql跨数据库如何访问linux 下mysql_SQL跨数据库访问linux或windows的mysql和定时作业 (转)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python中函数可以赋值给一个变量_p
- 下一篇: mysql优化说出九条_技术分享 | M