{"repo":"golang-migrate/migrate","free":true,"listed":false,"github":"https://github.com/golang-migrate/migrate","clone":"git clone https://github.com/golang-migrate/migrate.git","description":"Database migrations. CLI and Golang library.","language":"Go","stars":18825,"topics":["go","golang","migration","migrations","database","postgres","cassandra","sqlite","mysql","neo4j"],"license":null,"category":"databases-storage","readme_excerpt":"migrate Database migrations written in Go. Use as CLI or import as library. Migrate reads migrations from sources and applies them in correct order to a database. Drivers are \"dumb\", migrate glues everything together and makes sure the logic is bulletproof. (Keeps the drivers lightweight, too.) Database drivers don't assume things or try to correct user input. When in doubt, fail. Forked from mattes/migrate Databases Database drivers run migrations. Add a new database? PostgreSQL PGX v4 PGX v5 Redshift Ql Cassandra / ScyllaDB SQLite SQLite3 (todo #165) SQLCipher MySQL / MariaDB Neo4j MongoDB CrateDB (todo #170) Shell (todo #171) Google Cloud Spanner CockroachDB YugabyteDB ClickHouse Firebird MS SQL Server rqlite Database URLs Database connection strings are specified via URLs. The URL format is driver dependent but generally has the form: dbdriver://username:password@host:port/dbname?param1=true&param2=false Any reserved URL characters need to be escaped. Note, the % character also needs to be escaped Explicitly, the following characters need to be escaped: ! , # , $ , % , & , ' , ( , ) , , + , , , / , : , ; , = , ? , @ , [ , ] It's easiest to always run the URL parts of your DB connection URL (e.g. username, password, etc) through an URL encoder. See the example Python snippets below: Migration Sources Source drivers read migrations from local or remote sources. Add a new source? Filesystem - read from filesystem io/fs - read from a Go io/fs Go-Bindata - read from embedded b","default_branch":null,"files":null,"tree":[],"storefront":"/r/golang-migrate","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/golang-migrate/migrate/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}