广域网链接库存管理

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第三方库


热门话题
在Java中从本地文件系统导入文件   spring boot如何在Java SpringBoot项目中集成Olingo(Odata)   java查找连续数组中缺少的第k个元素(超过时间限制)   java为什么在mySql中插入1/2行时会得到2/4行   java不能在静态上下文中使用它   File Observer方法的java My onEvent()部分不起作用   java Netty NioSocketChannel在多线程写入时收到中断消息   java将文件夹与父文件夹一起复制   java我的TictaToe代码出了什么问题?如何检查已采取的措施?   java Swing JTable更新   java如何将cordinates查找为int   如何使用selenium和java在firefox中打开新的空选项卡   java Gradle构建输出Jar未运行   java没有GET/WEBINF/jsp/login的映射。jsp