Monthly Archives: July 2018

IPv6 使用及注意事项

By | 2018-07-19

本文介绍常用工具及软件使用 ipv6 时候的注意事项, 以及应用程序支持 ipv6 需要进行的检查列表. 下文中提到的混合服务表示工具可以同时服务 ipv4 和 ipv6, 很多软件在代码层做了 AF_INET 和 AF_INET6 标识的判断, 数据可以复用同一个 socket, 比如下面提到的 nginx, tomcat, resin 这三个软件是混合服务的, 即便 ipv6 请求连接了 nginx, nginx 到 tomcat, resin 也可以用 ipv4 处理, 对已有的架构影响不大, 不过一些获取 ipv6 地址, 存储访问地址的应用需要额外修改下; 独立服务表示需要开启单独的选项指定以区别 ipv4 和 ipv6, 这种情况下就只能 ipv4, ipv6 各自单独服务, 互不影响, 这样对一些较老的工具软件冲击较大, 需要做额外的开发支持. 另外下文并没有深入介绍 linux 系统对 ipv6 的具体支持, 更多信息可参考:… Read More »

使用 usql 连接各种不同的数据库

By | 2018-07-02

usql 介绍 usql 是一个统一的数据库连接工具, 目前支持常用的各种数据库, 包括 PostgreSQL, MySQL, Oracle, SQLite3, Microsoft SQL Server 以及最近几年出现的较新的数据库, 比如 clickhouse, Cassandra 等, 详见 database-support. 通常情况下 usql 以 usql [options] DSN 的方式进行连接, 不过 usql 并没有对各个数据的 DSN 进行过多的处理, 大部分情况下只是将其值直接传递到后端的数据库 driver, 所以 usql 的 DSN 格式依据不同的数据库会有不同的选项参数. 下面通过示例说明如何使用 usql 连接 MySQL, SQL Server, sqlite3, cassandra 以及 clickhouse. 连接 mysql DSN 参数依据 go-sql-driver #… Read More »