Comments (8)
Will we be supporting MySQL 8.0 or this task should first support the last stable MySQL version i.e. 5.6?
from obevo.
I'd be happy to have both supported. The current code was done off 8.0, but the code is still in development; we created the base frame around it but it is not prod ready.
In terms of todos:
- Reenable tests (remove skipTests=true from the obevo-db-mysql pom)
- Have the mysql-setup.sh parameterized with the correct version number, following the example from obevo-db-db2 (also see .travis.yml)
- Get the various integration tests working in that project
Ideally, we can run tests against both versions within the build, but for now, it is fine to start with just one version, and once that is fully working, to try the other version
from obevo.
Hi @shantstepanian
Having used DeployAnywhere (as-was) at GS I was hoping to use Obevo at my current firm, but no MySQL support is a show-stopper.
Any ideas of this issue likely to progress in the short term?
Thanks.
from obevo.
Hey @pdaplyn , long time! Hope all is well there.
I have a couple other things in progress, but I'm happy to add this to the mix to get this use case going for you.
A few questions to start:
- What MySQL version are you on?
- Is this for a new database or reverse-engineering an existing one?
- What object types (e.g. table, view, SP, etc.) are you dealing with?
from obevo.
Thanks @shantstepanian - currently trying to bend liquibase to my will as an alternative.
Answers:
- Version: 5.7
- Reverse Engineer
- Just Tables (with PK & FK constriants, etc) & Views
Great to see this project still moving forward!
from obevo.
Hi @pdaplyn, happy new year!
I have an early snapshot of this ready for you to try
https://www.dropbox.com/s/mpn3ho3erobezrb/obevo-cli-local-SNAPSHOT-dist.zip?dl=0
The example I tested on was relatively simple - see the schema example and the reverse engineer output
MySQL's reverse engineering is rather painful to use; you'll have to use mysqldump, and I haven't yet cleaned up the MySQL-specific version number syntax that mysql has (see below), though from what I understand the SQL will still execute, so I may be ok to leave it in long term
/*!50001 CREATE VIEW VIEW1 AS select VIEW2.A_ID AS A_ID,VIEW2.B_ID AS B_ID,VIEW2.STRING_FIELD AS STRING_FIELD,VIEW2.TIMESTAMP_FIELD AS TIMESTAMP_FIELD,VIEW2.C_ID AS C_ID,VIEW2.EXTRA1 AS EXTRA1,VIEW2.EXTRA2 AS EXTRA2,VIEW2.EXTRA3 AS EXTRA3,VIEW2.EXTRA4 AS EXTRA4 from VIEW2 */
You can reverse engineer using the guide here - https://goldmansachs.github.io/obevo/existing-onboarding-guide.html
Note the "vendor-provided tools guide" in step 3. The mysql command would be something like this
mysqldump -u myuser --password=mypass --databases myschema01 --compact --compatible=ANSI --no-create-db --skip-quote-names --skip-dump-date --no-data --skip-add-drop-table > /yourOutput/revengoutput.txt
Let me know how things work for you on this
If you have issues w/ reverse engineering, please send me the mysqldump output of your file that I can use as a reference (only if you can sanitize it to remove any proprietary code, otherwise, just provide me any relevant snippets)
from obevo.
@pdaplyn version 8.0.0 has been released with these changes. Please give it a try and let me know how it goes
from obevo.
Thanks @shantstepanian - I'll check it out as soon as I get the chance!
from obevo.
Related Issues (20)
- Obevo DB2 support HOT 2
- Changes in tokens, when used in an object, should trigger a change on the object
- Correct and clarify the graph cycle error message
- NPE caused when package-info.txt file w/ METADATA section exists in staticdata (data) folder
- Update documentation with CSV null value handling
- Rollback detection should work fine for multi-schema use case if one schema is a no-op and the other is rollback
- Update .travis.yml to only build releases if tag starts with "release-x.y.z"
- Add MemSQL Support
- Question on system-config.xml for SQL Server HOT 2
- Issue with reverse engineering SQL Server database HOT 4
- Oracle - XSD deployment capability HOT 1
- Building obevo using maven HOT 1
- commons-text NoSuchMethod due to version conflict HOT 2
- Issues with using -rollback flag
- Incorporate Credential Vault for Obevo deploy
- Issue with multiple sql queries in single change HOT 1
- Stored Procedure did not get installed with warning as "badFileFormat"
- Issue with DB2 Deploy DataType Converter from String to Clob
- Wrong table's schema introspecting query for Postgres DB HOT 2
- Getting Out of memory error for Oracle schema with code like packages functions and procedures
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from obevo.