{"id":23358059,"url":"https://github.com/inteliense/lib_mysqludf_secure_shell","last_synced_at":"2026-04-30T20:33:32.715Z","repository":{"id":155464315,"uuid":"626160283","full_name":"inteliense/lib_mysqludf_secure_shell","owner":"inteliense","description":"This library will allow mysql to run scripts on your system using a secure restricted shell.","archived":false,"fork":false,"pushed_at":"2023-04-26T00:42:30.000Z","size":33,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-07T20:21:25.238Z","etag":null,"topics":["database","database-management","linux","mysql","mysql-functions","mysql-plugin","mysql-server","user-defined-functions"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/inteliense.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"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}},"created_at":"2023-04-10T23:27:27.000Z","updated_at":"2023-04-25T22:43:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"672b6ed9-360f-468e-b4cb-af2caa5099b9","html_url":"https://github.com/inteliense/lib_mysqludf_secure_shell","commit_stats":null,"previous_names":["inteliense/lib_mysqludf_secure_shell"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/inteliense/lib_mysqludf_secure_shell","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inteliense%2Flib_mysqludf_secure_shell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inteliense%2Flib_mysqludf_secure_shell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inteliense%2Flib_mysqludf_secure_shell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inteliense%2Flib_mysqludf_secure_shell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/inteliense","download_url":"https://codeload.github.com/inteliense/lib_mysqludf_secure_shell/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inteliense%2Flib_mysqludf_secure_shell/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32476682,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["database","database-management","linux","mysql","mysql-functions","mysql-plugin","mysql-server","user-defined-functions"],"created_at":"2024-12-21T10:36:44.280Z","updated_at":"2026-04-30T20:33:32.701Z","avatar_url":"https://github.com/inteliense.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# lib_mysqludf_secure_shell\n\nThis library will allow mysql to run scripts on your system using a secure restricted shell (recommended/default).\u003cbr\u003e\u003cbr\u003e\nThere is an option to disable security features which adds the `sys_run` function to MySQL and removes the use of `/bin/rbash` in Linux. This new function basically just lets you do what you want \u0026 takes two arguments: the executable and the arguments. By default, you will have one function: `sys_shell`. `sys_shell` will run any shell command. All functions return the exit status. Keep in mind that by using the restricted shell and .bash_profile you'll need to have your shell scripts installed in the mysql user's home directory (`/home/mysql-client` if using the install script) \u003cbr\u003e\u003cbr\u003e  \n\u003cstrong\u003eNote\u003c/strong\u003e If you can't get it working check system log for AppArmor or SELinux denials or switch to the less secure method by uncommenting the return value in the `lib_mysqludf_secure_shell.cc` file to return the `system(...)` function call result.\u003cbr\u003e\u003cbr\u003e\nThis is completely untested on Windows and Fedora based distros. The code in general should work fine, but there may need to be minor modifications made to get it working for your use case.\n\n# Requirements\nMySQL `\u003e=8.0`\u003cbr\u003e\nlibmysqlclient-dev `apt-get install default-libmysqlclient-dev`\u003cbr\u003e\ncmake `\u003e=3.21`\u003cbr\u003e\n\n\n# Installation\n - Change to the source directory\n - run `./install.sh`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finteliense%2Flib_mysqludf_secure_shell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finteliense%2Flib_mysqludf_secure_shell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finteliense%2Flib_mysqludf_secure_shell/lists"}