广域网链接库存管理

linkInventor的Python项目详细描述


各种电信服务供应商提供的所有WIDW区域网络链路的清单。
对于本项目,假设有一个leagacy单片应用程序,用于
服务于这些链接库存管理,并且库存数据在预先退出的Microsoft SQL数据库中随时可用。

此微服务将首先与先前存在的数据库建立连接,而不是创建连接,并启用rest api来查询数据。未来,它有望在link inventory
管理中提供新功能,并将独立于自己的数据库。







install pyodbc-要配置ubuntu16.04以连接到MS SQL Server,您可以在此处阅读一篇详细文章
https://wordpress.com/post/bhujaykbhatta.wordpress.com/1339,或按照下面的一节进行摘要
==ease-a
没有可用的LSB模块。
分发服务器ID:ubuntu
描述:ubuntu 16.04.4 LTS
版本:16.04
代码名:xenial
==========sudo su
curl https://packages.microsoft.com/keys/microsoft.asc apt key添加-
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list>;/etc/apt/sources.list.d/mssql release.list
sudo apt get update
sudo accept_eula=y apt get install msodbcsql17
sudo accept_eula=y apt get install mssql tools
sudo apt get install unixodbc dev freetds bin freetds dev tdsodbc
退出
在虚拟环境中安装pyodbc
pip安装pyodbc
pip安装mssql cli



[freetds]
description=v0.91,协议v7.2
driver=/usr/lib/x86_linux-gnu/odbc/libtdsodbc.so
setup=/usr/lib/i386 linux gnu/odbc/libtdss.so
fileusage=1
usagecount=1



sudo vi/etc/freetds/freetds.conf

[全局]
tds协议版本
;tds版本=4.2


#是否为诊断目的写入TDSDump文件
(在多用户系统上设置为/tmp不安全)
;转储文件=/tmp/freetds.log
;调试标志=0xffff

;命令和连接超时
;超时=10
;连接超时=10

ver50]
host=symachine.domain.com
port=5000
tds version=5.0

ver
[mssql]
host=dbserver
port=1433
tds version=7.0



sudo vi/etc/odbc.ini

[mssql]
driver=freetds
servername=mssql;将其映射到dsn name而不是实际主机名
port=1433
tdsion=7.2





ft.com/mssql/server:2017最新版本



r/>Docker在主机级别创建卷,甚至如果容器被删除,则卷将被持久化
,下一个docker run命令将使用-v sqlvolume挂载该现有卷


driver volume name
local sqlvolume


ept_eula=y'-e'mssql_sa_password=welcome@123'-p 1433:1433-v<;主机目录>;:/var/opt/mssql-d mcr.microsoft.com/mssql/server:2017最新版本


sudo docker exec-it sql1"bash"
/opt/mssql tools/bin/sqlcmd-s localhost-u sa-p'welcome@123
创建数据库信息操作程序
从sys.databases中选择name
create login user1 with password='user@1234';
create user user1 for login user1;
go

grant all privileges on infooper.*to'user1'@'localhost';
go

pip从远程计算机安装mssql cli或https://github.com/dbcli/mssql cli/blob/master/doc/installation/linux.md ubuntu-1604
并运行客户端命令



mssql cli-s 192.168.111.141-u sa-d infooper-p welcome@123
创建表vw_u comm_链接(serial_no int not null主键,circuit_ id nvarchar(50),division_name nvarchar(50),fa_end nvarchar(50),bandwidth nvarchar(50),link_type nvarchar(50),)
插入vw_comm_links值(1,'circuitid1','division1','fa end 1','10mb','mpls');
插入vw_comm_links值(2,'circuitid2','division2','fa end 2',,"5mb","ptp");
插入vw_comm_links值(3,'circuitid3','division3','faend3','20mb','mpls');
go
select*from vw_comm_links
go
quit

test that tds is working

isql-v mssql sa welcome@123



e虚拟环境中的应用程序

virtualenv-p python3 venv
source venv/bin/activate
pip install linkinventory



/etc/tokenleader/linkinventory_configs.yml

host_name:0.0.0.0对于docker,这应该是0.0.0
host_port:5004
ssl:disabled除了测试flaks自己的ssl之外,不需要。ssl应该由apache处理
ssl设置:adhoc
数据库:
驱动程序:'{freetds}'
tds-verson:7.0
服务器:db server
端口:1433
数据库:infooper
uid:sa
db-pwd-key-map:db-pwd
引擎连接字符串:'mssql+pyodbc:///odbc-connect={}'

secrets:
secrets_file_location:linkinventory/tests/test_data/secrets.yml;您具有写访问权限的位置
fernet_key_location:linkinventory/tests/test_data/fernetkeys;您具有写访问权限并优先与secrets_file_location分离的位置
db_pwd_key_map:db_pwd使用encrypt pwd命令时,将此值用于--kemap
tokenleader_pwd key_map:tl_pwd


为db生成加密密码

encrypt pwd-k db_pwd-p<;此处输入密码>;



启动服务

linv开始











欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
virtualbox无法从java移动共享文件夹中的文件   java如何连接Android 4.3.5(GA)的apache HttpClient库?   片段中的java Recyclerview未立即显示警报对话框结果   javac(n,r)计算器程序不工作   java使用BooleanQuery还是编写更多索引?   如何在java中设置y/n循环?   java不兼容的通用通配符捕获   java如何在安卓xml中编写数据绑定时的三元操作条件   java如何使用FileDialog?   java如何创建单元测试来检测是否有人使用错误的编码编辑了文件?   java如何从唯一的字符串生成唯一的int?   java gradletomcatplugin:log4j:WARN找不到记录器的附加程序   java我的动态编程解决方案(Kefa和第一步)在codeforces中有什么问题?   java每天更新两个数据库,使它们都包含相同的有效数据集   java如何检查给定的时间是否在时间限制之间   java在单个json POST上保存父级和子级   java如何获取Solr字段类型