{"id":15322979,"url":"https://github.com/msfidelis/boreal","last_synced_at":"2025-10-26T06:40:20.302Z","repository":{"id":92817510,"uuid":"90299547","full_name":"msfidelis/boreal","owner":"msfidelis","description":"REST interface for MySQL, MariaDB and Aurora servers running in containers!  :whale: :snowflake:","archived":false,"fork":false,"pushed_at":"2018-07-13T01:04:07.000Z","size":128,"stargazers_count":17,"open_issues_count":3,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-15T02:45:18.700Z","etag":null,"topics":["aurora","cache","docker","mariadb","mysql","rest-api","scalability"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/u/msfidelis/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/msfidelis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-05-04T19:01:07.000Z","updated_at":"2024-08-13T18:24:22.000Z","dependencies_parsed_at":"2023-04-21T16:06:25.996Z","dependency_job_id":null,"html_url":"https://github.com/msfidelis/boreal","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/msfidelis/boreal","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msfidelis%2Fboreal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msfidelis%2Fboreal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msfidelis%2Fboreal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msfidelis%2Fboreal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/msfidelis","download_url":"https://codeload.github.com/msfidelis/boreal/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msfidelis%2Fboreal/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281068965,"owners_count":26438554,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-26T02:00:06.575Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aurora","cache","docker","mariadb","mysql","rest-api","scalability"],"created_at":"2024-10-01T09:18:43.639Z","updated_at":"2025-10-26T06:40:20.297Z","avatar_url":"https://github.com/msfidelis.png","language":"JavaScript","readme":"\n![Aurora](https://i.imgur.com/IOsMDVW.png)\n\n[![Build Status](https://secure.travis-ci.org/msfidelis/boreal.png?branch=master)](http://travis-ci.org/msfidelis/boreal) [![Code Climate](https://codeclimate.com/github/msfidelis/boreal/badges/gpa.svg)](https://codeclimate.com/github/msfidelis/boreal)\n\n\u003e REST Provider for MySQL, MariaDB and Amazon Aurora servers running in containers! \n\n# RUN \n\n## RESTfy a simple MySQL server\n\n``` bash\n$ docker run -e MYSQL_MASTER_SERVER=http://master.rds.com.br \\\n\t-e MYSQL_MASTER_USER=root \\\n\t-e MYSQL_MASTER_PASS=pass \\\n\t-e MYSQL_MASTER_SCHEMA=payments \\\n     \t-e MYSQL_MASTER_PORT=3306 \\\n\tmsfidelis/boreal\n```\n\n## RESTfy a Master and Read server \n\n``` bash\n$ docker run -e MYSQL_MASTER_SERVER=http://master.rds.com.br \\\n\t-e MYSQL_MASTER_USER=root \\\n\t-e MYSQL_MASTER_PASS=pass \\\n\t-e MYSQL_MASTER_SCHEMA=payments \\\n    \t-e MYSQL_MASTER_PORT=3306 \\\n    \t-e MYSQL_READ_SERVER=http://read.rds.com.br \\\n\t-e MYSQL_READ_USER=root \\\n\t-e MYSQL_READ_PASS=pass \\\n\t-e MYSQL_READ_SCHEMA=payments_replica \\\n    \t-e MYSQL_READ_PORT=3306 \\\n\tmsfidelis/boreal\n```\n\n## RESTFy a MySQL Server and Memcached Server\n\n``` bash\n$ docker run -e MYSQL_MASTER_SERVER=http://master.rds.com.br \\\n\t-e MYSQL_MASTER_USER=root \\\n\t-e MYSQL_MASTER_PASS=pass \\\n\t-e MYSQL_MASTER_SCHEMA=payments \\\n    \t-e MYSQL_MASTER_PORT=3306 \\\n    \t-e MEMCACHED_SERVER=http://memcached.com.br \\\n    \t-e MEMCACHED_PORT=11211 \\\n\tmsfidelis/boreal\n```\n\n## RESTFy a MySQL Server and Redis Server\n\n``` bash\n$ docker run -e MYSQL_MASTER_SERVER=http://master.rds.com.br \\\n\t-e MYSQL_MASTER_USER=root \\\n\t-e MYSQL_MASTER_PASS=pass \\\n\t-e MYSQL_MASTER_SCHEMA=payments \\\n    \t-e MYSQL_MASTER_PORT=3306 \\\n    \t-e REDIS_SERVER=http://redis.com.br \\\n    \t-e REDIS_PORT=6379 \\\n\tmsfidelis/boreal\n```\n\n\n\n# SELECT\n\n## Select Fields \n\n```bash\nhttp://localhost:1337/v1/users?_fields=id:name:age\n```\n\n### Output Query: \n\n```sql\nselect `id`, `name`, `age` from `users`\n```\n\n## Where Fields \n\n```\nhttp://localhost:1337/v1/users?_fields=id:name:age\u0026_where=id=12\n```\n\n### Output Query:\n\n```sql\nselect `id`, `name`, `age` from `users` where id = 12\n```\n\n```\nhttp://localhost:1337/v1/users?_fields=id:name:age\u0026_where=id=12 AND age \u003e 12 OR NAME = 'matheus'\n```\n\n### Query Output:\n\n```sql\nselect `id`, `name`, `age` from `users` where id = 12\n```\n\n\n# INSERT\n\n## INSERT A SINGLE ROW\n\n### Request POST \n\n```bash\n$ curl -X POST \\\n    -H \"Content-type: Application/json\" \\\n    -d '{ \"data\" : {\"name\":\"Matheus Fidelis\", \"age\":21}}' \\\n    localhost:1337/v1/users\n```\n### Output Query\n\n```sql\ninsert into `users` (`age`, `name`) values (21, 'Matheus Fidelis')\n```\n\n## INSERT BULK DATA\n\n### Request POST\n\n```bash\n$ curl -X POST \\\n    -H \"Content-type: Application/json\" \\\n    -d '{ \"data\" : [{\"name\":\"Matheus Fidelis\", \"age\":21}, {\"name\":\"Dunha\", \"age\":30}]}' \\\n    localhost:1337/v1/users\n```\n\n\n# UPDATE\n\n### Request PUT/PATCH \n\n```bash\ncurl -X PUT \\\n    -H \"Content-type: Application/json\" \\\n    -d '{ \"data\": {\"name\":\"Matheus Fidelis changed\", \"age\":21}, \"where\":\"id = 12\"}' \\\n    localhost:1337/v1/users\n```\n\n### Output Query\n\n```sql\nupdate `users` set `age` = 21, `name` = 'Matheus Fidelis' where id = 12 and user = `Matheus`\n```\n\n\n# DELETE\n\n```bash\ncurl -X DELETE \\\n    -H \"Content-type: Application/json\" \\\n    -d '{\"where\":\"id = 12 and name = `Matheus Fidelis`\"}' \\\n    localhost:1337/v1/users\n```\n\n### Output Query\n\n```sql \ndelete from `users` where id = 12 and user = `Matheus`\n```\n\n# RAW QUERY\n\n```bash\n$ curl -X POST \\\n    -H \"Content-type: Application/json\" \\\n    -d '{\"query\":\"SELECT * FROM users\"}' \\\n    localhost:1337/v1/_QUERY\n```\n\n### Output Query\n```sql\nSELECT CONCAT_WS(`,`,`First name`,`Second name`,`Last Name`\n```\n\n# ADMINISTRATIVE COMMANDS\n\n## FLUSH TABLES\n\n```bash\ncurl -X GET http://localhost:1337/v1/_FLUSHTABLES\n```\n\n### RESPONSE\n\n```json\n{\n  \"info\": {\n    \"query_uuid\": \"6106fca4-998f-43a9-937f-c0f322846df1\",\n    \"sql\": \"FLUSH TABLES\",\n    \"affectedRows\": 0\n  },\n  \"data\": [\n    {\n      \"fieldCount\": 0,\n      \"affectedRows\": 0,\n      \"insertId\": 0,\n      \"serverStatus\": 2,\n      \"warningCount\": 0,\n      \"message\": \"\",\n      \"protocol41\": true,\n      \"changedRows\": 0\n    },\n    null\n  ]\n}\n```\n\n## RESET QUERY CACHE\n\n```bash\n$ curl -X GET http://localhost:1337/v1/_RESETQUERYCACHE\n```\n\n### Response\n\n```json\n{\n  \"info\": {\n    \"query_uuid\": \"72b50bb8-c1c2-4d00-bf69-0257e805973c\",\n    \"sql\": \"RESET QUERY CACHE\",\n    \"affectedRows\": 0\n  },\n  \"data\": [\n    {\n      \"fieldCount\": 0,\n      \"affectedRows\": 0,\n      \"insertId\": 0,\n      \"serverStatus\": 2,\n      \"warningCount\": 0,\n      \"message\": \"\",\n      \"protocol41\": true,\n      \"changedRows\": 0\n    },\n    null\n  ]\n}\n```\n## FLUSH QUERY CACHE\n\n```bash\n$ curl -X GET http://localhost:1337/v1/_FLUSHQUERYCACHE\n```\n\n### RESPONSE\n\n```json\n{\n  \"info\": {\n    \"query_uuid\": \"a1083c56-7f8b-46f9-acf6-9cdbf3ed74c8\",\n    \"sql\": \"FLUSH QUERY CACHE\",\n    \"affectedRows\": 0\n  },\n  \"data\": [\n    {\n      \"fieldCount\": 0,\n      \"affectedRows\": 0,\n      \"insertId\": 0,\n      \"serverStatus\": 2,\n      \"warningCount\": 0,\n      \"message\": \"\",\n      \"protocol41\": true,\n      \"changedRows\": 0\n    },\n    null\n  ]\n}\n```\n## SHOW PROCESSLIST\n\n```bash\n$ curl -X GET http://localhost:1337/v1/_PROCESSLIST\n```\n\n### RESPONSE\n```json\n{\n  \"info\": {\n    \"query_uuid\": \"9dfdc45b-dfc1-4c05-9533-6a9d524e94e8\",\n    \"sql\": \"SHOW PROCESSLIST\"\n  },\n  \"data\": [\n    [\n      {\n        \"Id\": 46,\n        \"User\": \"root\",\n        \"Host\": \"172.19.0.1:48240\",\n        \"db\": \"test\",\n        \"Command\": \"Sleep\",\n        \"Time\": 5685,\n        \"State\": \"\",\n        \"Info\": null\n      },\n      {\n        \"Id\": 47,\n        \"User\": \"root\",\n        \"Host\": \"172.19.0.1:48242\",\n        \"db\": null,\n        \"Command\": \"Sleep\",\n        \"Time\": 5704,\n        \"State\": \"\",\n        \"Info\": null\n      },\n      {\n        \"Id\": 322,\n        \"User\": \"root\",\n        \"Host\": \"172.19.0.1:48794\",\n        \"db\": \"test\",\n        \"Command\": \"Sleep\",\n        \"Time\": 2080,\n        \"State\": \"\",\n        \"Info\": null\n      }\n    ]\n    ...\n}\n```\n\n## SHOW CREATE TABLE\n\n```bash\n$ curl -X GET http://localhost:1337/v1/_SHOWCREATE/{table}\n```\n\n### RESPONSE\n\n```json\n{\n  \"info\": {\n    \"query_uuid\": \"7bf77111-f774-4cdc-89cb-46f183b7d264\",\n    \"sql\": \"SHOW CREATE TABLE users\"\n  },\n  \"data\": [\n    [\n      {\n        \"Table\": \"users\",\n        \"Create Table\": \"CREATE TABLE `users` (\\n  `id` int(11) NOT NULL AUTO_INCREMENT,\\n  `name` varchar(50) NOT NULL,\\n  `age` int(11) NOT NULL,\\n  PRIMARY KEY (`id`)\\n) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=latin1\"\n      }\n    ]\n  ]\n  ...\n}\n```\n\n## DESCRIBE TABLE\n\n```\n$ curl -X GET http://localhost:1337/v1/_DESCRIBE/users\n```\n\n```json\n{\n  \"info\": {\n    \"query_uuid\": \"f5f8a6ae-f9c1-4a6d-b304-15f0a3eedd05\",\n    \"sql\": \"DESCRIBE users\"\n  },\n  \"data\": [\n    [\n      {\n        \"Field\": \"id\",\n        \"Type\": \"int(11)\",\n        \"Null\": \"NO\",\n        \"Key\": \"PRI\",\n        \"Default\": null,\n        \"Extra\": \"auto_increment\"\n      },\n      {\n        \"Field\": \"name\",\n        \"Type\": \"varchar(50)\",\n        \"Null\": \"NO\",\n        \"Key\": \"\",\n        \"Default\": null,\n        \"Extra\": \"\"\n      },\n      {\n        \"Field\": \"age\",\n        \"Type\": \"int(11)\",\n        \"Null\": \"NO\",\n        \"Key\": \"\",\n        \"Default\": null,\n        \"Extra\": \"\"\n      }\n    ]\n    ...\n}\n```\n\n## SHOW TABLES\n\n```\n$ curl -X GET http://localhost:1337/v1/_SHOWTABLES\n```\n\n### RESPONSE\n\n```json\n{\n  \"info\": {\n    \"query_uuid\": \"1b0a3fc0-81a8-4d15-8c71-d96b9ca9ebbb\",\n    \"sql\": \"SHOW TABLES\\t\"\n  },\n  \"data\": [\n    [\n      {\n        \"Tables_in_test\": \"users\"\n      }\n    ],\n    [\n      {\n        \"catalog\": \"def\",\n        \"db\": \"information_schema\",\n        \"table\": \"TABLE_NAMES\",\n        \"orgTable\": \"TABLE_NAMES\",\n        \"name\": \"Tables_in_test\",\n        \"orgName\": \"TABLE_NAME\",\n        \"charsetNr\": 33,\n        \"length\": 192,\n        \"type\": 253,\n        \"flags\": 1,\n        \"decimals\": 0,\n        \"zeroFill\": false,\n        \"protocol41\": true\n      }\n    ]\n  ]\n}\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsfidelis%2Fboreal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmsfidelis%2Fboreal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsfidelis%2Fboreal/lists"}