Announce Bytebase 1.0 and our Team Plan view the plan
Learn product updates and everything about database.
Follow https://github.com/bytebase/bytebase#installation. If you upgrade from a previous version, just restart after obtaining the new release binary.
Use the --pg option to specify the database endpoint upon launching Bytebase.
Support data source name (DSN) formats to connect databases in CLI, e.g. --dsn mysql://user:passwd@host:port/dbname?opt1=val1&opt2=val2
User can install bb
CLI with only one command /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/bytebase/bytebase/HEAD/scripts/install_bb.sh)"
. Previously, users needed to go through several steps from downloading on GitHub Release, decompressing and manually moving the files to executable file directory.
Introducing the SQL sheet dashboard page as users can view all related sheets in a table view.
Users whose roles are Owner and DBA in Workspace can view all projects under Settings
.
This enables serverless platforms like render.com to point its health check endpoint to /healthy.
Visit Default Project
button explicitlyThe Default Project
is the special project holding the databases synced from the database instance. Users usually need to visit this project to transfer the database to their own projects.
Follow https://github.com/bytebase/bytebase#installation. If you upgrade from a previous version, just restart after obtaining the new release binary.
Database Review Guide lists all the rules in schema change review, from the naming convention of Table, Column, and Index to the designated WHERE clause. We provide rule templates for the MySQL Dev and Prod environments. DBAs can configure the rules manually based on our templates, and generate images for internal reference. Meanwhile, we are actively working on the following area:
Currently, we only support MySQL. We will add PostgreSQL support later.
Only OWNER and DBA can toggle Debug mode
When the Debug mode is enabled, you can see the internal error messages on the web console, and more details are included in the logs. Previously, users can use --debug
on Bytebase startup to do this. Now you can toggle this setting at runtime. Debug mode is a global setting and will affect all users, thus only OWNER and DBA can toggle it. It's expected to be temporarily turned on for troubleshooting issues.
Follow https://github.com/bytebase/bytebase#installation. If you upgrade from a previous version, just restart after obtaining the new release binary.
💡 Our official documentation switches from gitbook to bytebase.com/docs. All the documents are now in our Github repository. This will help improve our coordination efficiency in documentation greatly. Now developers can follow https://bytebase.com/docs/document-write-guide to commit your changes.
- Full dataset (~170 MB) including 300024 employee records.
- Small dataset (~6 MB) including 10000 employee records.
For a fresh installation, follow https://github.com/bytebase/bytebase#installation.
Tenant Mode
SQL Schema Review
SQL Editor
Installation Improvement
For a fresh installation, follow https://github.com/bytebase/bytebase#installation.
With over a year of hard work and 3500+ commits, we finally reach the milestone to announce our 1.0.0 version and our Team Plan. The Team Plan includes:
The price starts at $29 per instance per month. Please visit our pricing page for more details.
You can visit https://hub.bytebase.com/pricing to purchase a subscription license and manage your team plan subscription in Settings page.
If a project is linked with GitLab repository, one can sync that repository's membership to the project's membership.
We improve the layout for showing the current database schema change progress across all tenants.
SQL Editor
Retire issue rollback feature
Previously, Bytebase allows user to specify a rollback SQL for the rollback. And if user chooses to rollback the SQL, Bytebase will use the rollback SQL to create that rollback SQL. This only sounds good in theory, because in reality, it's already a big hurdle to write a good schema change SQL, it would be even challenging to ask the developer to provide a correct rollback SQL at the same time.
Thus, we decide to retire this feature. Meanwhile we already have ideas for a much better solution without requiring developer to write the rollback SQL manually. Please stay tuned.
For fresh installation, follow https://github.com/bytebase/bytebase#installation.
If you upgrade from the previous version, there is some breaking schema change. Please contact support@bytebase.com and we will help you manually upgrade to the new version.
For fresh installation, follow https://github.com/bytebase/bytebase#installation.
If you upgrade from the previous version, there is some breaking schema change. Please contact support@bytebase.com and we will help you manually upgrade to the new version.
Say you have many databases that use identical database schemas and need uniform management. For example, my highly-available service stores database data in different locations or data centers; or my SaaS service stores every customer/tenant's database data in their own databases. This multi-tenancy database management feature allows you to manage and update schemas for these hundreds of databases consistently and conveniently.
Most in-house dev teams use GitLab EE/CE to host their code. Bytebase has already supported VCS integration with GitLab to manage database schemas. We now further enhance the integration to allow users to use their GitLab EE/CE account to login Bytebase. Thanks @siu91 for the suggestion https://github.com/bytebase/bytebase/issues/27.
Besides the schema change (DDL) workflow, we now also support the DML workflow. Thanks @TBACEJ for the suggestion https://github.com/bytebase/bytebase/issues/337
For fresh installation, follow https://github.com/bytebase/bytebase#installation.
If you upgrade from the previous version, there is some breaking schema change. Please contact support@bytebase.com and we will help you manually upgrade to the new version.
User can now use cmd+k to invoke the command bar to quickly navigate among different Bytebase sections.
This ease the path to support other VCS systems like GitHub, BitBucket.
Now every PR will create a unique preview environment. This makes it easy to collaborate among author and reviewers.
Bytebase now officially supports simplified Chinese. User can toggle the language from the top-right profile dropdown.
Now, user can specify the earliest allowed time for a task to be executed by Bytebase. If specified, task will not be executed until that specified time.
We will log any change to the SQL statement now, and send an inbox message to the relevant people.
When the assignee opens the modal to approve an issue, she can now view the detailed check status by opening a stacked modal.
Story: In a change to support ClickHouse, we were unifying SQL statement execution to a shared function. Bytebase supports many databases including MySQL, Postgres, Snowflake, TiDB, Clickhouse - Yes, more to come. We are trying to use the same interface for interacting with all database types if possible. Since ClickHouse cannot execute multiple statements in a single db.ExecContext(), we split the multi-statement string into multiple single-statement strings and use a transaction to execute the migration statements. In fact, we should execute migration transactionally so that previous executions will be rolled back upon failures, otherwise migration will leave the database in an inconsistent state. However, this change caused Postgres CREATE DATABASE to fail because Postgres CREATE DATABASE statement cannot be used inside a transaction (see reference 2). In the fix, we would skip using transactions for Postgres CREATE DATABASE statements.
Lessons learned: different databases are different, and users learn lessons usually in a hard way unfortunately. This is exactly why users should use Bytebase to manage database schemas, because our software can save you from hitting these blocks. We will also put effort into integration tests to cover critical user journeys for various database types so that we can catch these errors early on. Even though Bytebase is still in Alpha, we would like to share these stories transparently to readers who are interested in databases.
Reference: https://www.postgresql.org/docs/current/sql-createdatabase.html
Notes section: CREATE DATABASE cannot be executed inside a transaction block.
MySQL allows AUTO_INCREMENT to start with a value other than 1. However, this starting value in table schema (MySQL’s SHOW CREATE TABLE native schema export) would change when rows are inserted. For example, AUTO_INCREMENT=20 will be AUTO_INCREMENT=22 when the table gets two more rows. This would cause Bytebase’s schema drift detection to complain when AUTO_INCREMENT tables are mutated. Starting with this release, we will exclude this starting value in a schema-only dump.
By looking at typical MySQL user journeys, starting value in the schema only makes sense for a database dump with both schema and data since the restore of this dump will make the new database an exact copy of the previous database. This starting value is meaningless in a schema-only dump for most use cases, otherwise, users should be setting the starting value explicitly themselves after the restore.
Access token expiration was added to GitLab 14.3 release and became the default. This default wasn’t compatible with Bytebase’s GitLab Version-Control-System (VCS) version control integration because tokens passing the 2-hour expiration window became invalid. This Bytebase release supports GitLab 14.3 by refreshing tokens upon expiration, providing enhanced security to the community and beyond.
User can now use cmd+k to invoke the command bar to quickly navigate among different Bytebase sections.
User can set up a webhook endpoint for the database and after a successful backup, Bytebase will send a POST request to the configured webhook endpoint.
As an example, user can use this feature to integrate with Better Uptime's Heartbeats feature to monitor the status of database backups. In case Bytebase does not regularly send requests to Heartbeat endpoint configured on Better Uptime, Better Uptime will trigger the corresponding alert rule.
We added one-click button on our GitHub front page to launch Bytebase in Gitpod. Now user is only one click away from having a fully-fledged dev environment to play with Bytebase!
Snowflake® is a cloud-based data storage and analytics service. It allows corporate users to store and analyze data using cloud-based hardware and software.
ClickHouse® is an open-source, high performance columnar OLAP database management system for real-time analytics using SQL and it has a similar schema management requirement see #issue14.
This is a security fix release. Please consider upgrading it.
1. Reject the current user operation if the user has just been de-activated.
2. Secure the access token to prevent CSRF attack.
3. Disallow Bytebase to be loaded in an iframe.
This release takes a bit longer because we are packaging couple exciting features in it. Let's check them out.
Our team really love PostgreSQL and we are the ones delivering the initial launch of managed PostgreSQL at Google Cloud SQL. So we are really happy to announce the official PostgreSQL support in Bytebase. Elephant in the room ✅
Bytebase will periodically compare the recorded schema with the actual schema and expose the drift if occurs. We also provide a side-by-side view to show the diff.
Many things can go wrong for your database and unnoticed until an outage happens. We are always thinking of a proactive way to help user catch those problems. Today we introduce Anomaly Center, our attempt to address this challenge. A background process will periodically scan potentially anomalies on the managed instances and databases, then expose them in a holistic view.
We currently detect following anomalies and will add more in the future:
In the last release, we introduce the task check system and introduced the basic SQL syntax check. In this release, we advance the check to catch backward incompatible schema migration (e.g. RENAME TABLE). Introducing backward incompatible schema changes is one of the most common mistakes made by developers and enforcing backward compatible schema change is the standard practice adopted by many engineering organizations. Bytebase now automatically checks all common incompatible schema change scenarios and surface them in the SQL review panel:
Owner and DBA can now enforce backup schedule policy for the specific environment. e.g. require daily backup for production environment.
Update instruction
TiDB is an open-source, cloud-native, distributed SQL database for elastic scale and real-time analytics.
The page shows applied migration statement as well as the schema snapshot after the migration.
In the previous version, Bytebase couldn't sync the migration history properly because it used a MySQL 8.0 only feature.
Update instruction
User can now create rollback issue from the original closed issue easily via the UI.
Update instruction
In the previous version, Bytebase couldn't sync the migration history properly because it used a MySQL 8.0 only feature.
User can now configure weekly automatic backup for the database. Meanwhile, user can also take manual backup anytime. Later on, User can restore the backup to a new database.
User can now configure webhook to allow Bytebase to post messages to the configured webhook endpoint upon varioius events. Bytebase currently supports following events:
Update instruction
Update instruction
Update instruction
For fresh installation, follow https://github.com/bytebase/bytebase#installation.
We released our first open source version on GitHub. Please checkout our launch post.