[GH-ISSUE #282] Multi data source #247

Closed
opened 2026-02-26 11:57:24 +03:00 by kerem · 10 comments
Owner

Originally created by @VShawn on GitHub (Aug 30, 2022).
Original GitHub issue: https://github.com/1Remote/1Remote/issues/282

Originally assigned to: @VShawn on GitHub.

Sometime we need a personal session database + some shared session database for work teams.

  • MySQL database supported
  • SQLite path editing view
  • MySQL config editing view
  • Additonal data source control manager
    • ~ data RSA encryption for mysql ~ see #327
    • Database statue detector (find out if need reload)
    • Database statue detector work with ASYNC
    • reconnect after db config edit
    • A list view of all data source.( add / edit / delete )
  • Servers management for multi data source
    • Add new server to assign data source
    • Server list sort by data source
  • MySQL access control if if the db user has no write permission (have no insert update privileges)
    image
    • do not allow edit on UI
    • hide edit / delete / copy user name / copy password buttons.
    • do not allow add to this datasource
  • individual profile for additional data source for group deploy purpose
    • profile encryption
  • documents
    • user guide for how to use Chinese
    • user guide for how to use English
    • show this feature on 1Remote home page (individual case & team shared case)
Originally created by @VShawn on GitHub (Aug 30, 2022). Original GitHub issue: https://github.com/1Remote/1Remote/issues/282 Originally assigned to: @VShawn on GitHub. Sometime we need a personal session database + some shared session database for work teams. - [x] MySQL database supported - [x] SQLite path editing view - [x] MySQL config editing view - [x] Additonal data source control manager - ~ data RSA encryption for mysql ~ see #327 - [x] Database statue detector (find out if need reload) - [x] ~Database statue detector work with ASYNC~ - [x] reconnect after db config edit - [x] A list view of all data source.( add / edit / delete ) - [x] Servers management for multi data source - [x] Add new server to assign data source - [x] Server list sort by data source - [x] MySQL access control if if the db user has no write permission (have no insert update privileges) ![image](https://user-images.githubusercontent.com/10143738/196145245-a0078d1a-2756-40d1-9d7d-d8fefd508e59.png) - [x] do not allow edit on UI - [x] hide edit / delete / copy user name / copy password buttons. - [x] do not allow add to this datasource - [x] individual profile for additional data source for group deploy purpose - [x] profile encryption - [ ] documents - [x] user guide for how to use Chinese - [x] user guide for how to use English - [ ] show this feature on 1Remote home page (individual case & team shared case)
kerem 2026-02-26 11:57:24 +03:00
Author
Owner

@VShawn commented on GitHub (Sep 8, 2022):

here comes the list view

image

<!-- gh-comment-id:1240382841 --> @VShawn commented on GitHub (Sep 8, 2022): here comes the list view ![image](https://user-images.githubusercontent.com/10143738/189071593-de4bd843-d947-4179-859a-d51a4ed6256c.png)
Author
Owner

@majkinetor commented on GitHub (Sep 13, 2022):

Have you consider something database agnostic? 1RM certainly doesn't require non ANSI SQL.

Using postgresql should be equally easy as mysql and far more sane.

<!-- gh-comment-id:1245797369 --> @majkinetor commented on GitHub (Sep 13, 2022): Have you consider something database agnostic? 1RM certainly doesn't require non ANSI SQL. Using postgresql should be equally easy as mysql and far more sane.
Author
Owner

@VShawn commented on GitHub (Sep 14, 2022):

Actually we are required to use MySQL in the develop, so I started with MySQL first, mssql postgresql would be letter.

I trying to use VARCHAR only in create tabel. It would work (to my understanding) with most of the db.

Not very sure, I'm not expert of Database.

<!-- gh-comment-id:1246139485 --> @VShawn commented on GitHub (Sep 14, 2022): Actually we are required to use MySQL in the develop, so I started with MySQL first, mssql postgresql would be letter. I trying to use VARCHAR only in create tabel. It would work (to my understanding) with most of the db. Not very sure, I'm not expert of Database.
Author
Owner

@majkinetor commented on GitHub (Sep 14, 2022):

Yeah, varchar works everywhere but you are limiting yourself if you only use that.

You need check if it is ANSI SQL or use ORM like entity framework.

<!-- gh-comment-id:1246397154 --> @majkinetor commented on GitHub (Sep 14, 2022): Yeah, varchar works everywhere but you are limiting yourself if you only use that. You need check if it is ANSI SQL or use ORM like entity framework.
Author
Owner

@VShawn commented on GitHub (Oct 22, 2022):

almost done, @majkinetor you can try this one since you mentioned in https://github.com/1Remote/PRemoteM/issues/76#issuecomment-1246395658

1Remote alpha.01.zip

<!-- gh-comment-id:1287597814 --> @VShawn commented on GitHub (Oct 22, 2022): almost done, @majkinetor you can try this one since you mentioned in https://github.com/1Remote/PRemoteM/issues/76#issuecomment-1246395658 [1Remote alpha.01.zip](https://github.com/1Remote/PRemoteM/files/9843481/1Remote.alpha.01.zip)
Author
Owner

@Wikiphil commented on GitHub (Dec 31, 2022):

Hi,
Is this version will be merged with the main?

I configured my MySQL server and now all my entries are working on it. Pretty easy to configure, I'll try to access from another computer at the same time.

Regards.

<!-- gh-comment-id:1368151088 --> @Wikiphil commented on GitHub (Dec 31, 2022): Hi, Is this version will be merged with the main? I configured my MySQL server and now all my entries are working on it. Pretty easy to configure, I'll try to access from another computer at the same time. Regards.
Author
Owner

@VShawn commented on GitHub (Dec 31, 2022):

Yes, this version will next generation of PRemoteM. But it's not a good choose to use this version, it not stable now: AKA you might lost your data.

I suggest you get build pack from GitHub action artifacts: https://github.com/1Remote/PRemoteM/actions/runs/3806712068

The package I uploaded on Oct 22 is now obsolete.

<!-- gh-comment-id:1368177055 --> @VShawn commented on GitHub (Dec 31, 2022): Yes, this version will next generation of PRemoteM. But it's not a good choose to use this version, it not stable now: AKA you might lost your data. I suggest you get build pack from GitHub action artifacts: https://github.com/1Remote/PRemoteM/actions/runs/3806712068 The package I uploaded on Oct 22 is now obsolete.
Author
Owner

@Wikiphil commented on GitHub (Dec 31, 2022):

Done! I’ve updated to the latest version.

Views/Filters in the main windows are betters.

I'll test the readonly.

Thanks.

<!-- gh-comment-id:1368223374 --> @Wikiphil commented on GitHub (Dec 31, 2022): Done! I’ve updated to the latest version. Views/Filters in the main windows are betters. I'll test the readonly. Thanks.
Author
Owner

@Joly0 commented on GitHub (Jan 3, 2023):

Hey, this feature looks really cool and might be quite useful. Though a useful addition would be the possibility to define, if usernames and password are saved in the mysql database or in the local sqlite database.
This would be very useful for teams which all share the same servers, but dont share the same login or other servers for which the login is the same for every user.

I might be wrong, but i dont see this is possible at the moment, as far as i can see, the login is saved in the mysql and used for everyone that uses the mysql database

<!-- gh-comment-id:1369704416 --> @Joly0 commented on GitHub (Jan 3, 2023): Hey, this feature looks really cool and might be quite useful. Though a useful addition would be the possibility to define, if usernames and password are saved in the mysql database or in the local sqlite database. This would be very useful for teams which all share the same servers, but dont share the same login or other servers for which the login is the same for every user. I might be wrong, but i dont see this is possible at the moment, as far as i can see, the login is saved in the mysql and used for everyone that uses the mysql database
Author
Owner

@VShawn commented on GitHub (Jan 4, 2023):

@Joly0 You are right, sharing servers' address only is not possible for the current data structure.

And if you ask me, I suggest everyone save their own login in the local sqlite db in this case.

Anyhow... We need a user authority management if we are going to satisfy teams which all share the same servers, but dont share the same login. This means server-side\ more complex logic control \ management ui \ bla bla bla... That's too much work for me, I won't do that...

<!-- gh-comment-id:1370636447 --> @VShawn commented on GitHub (Jan 4, 2023): @Joly0 You are right, `sharing servers' address only` is not possible for the current data structure. And if you ask me, I suggest everyone save their own login in the local sqlite db in this case. Anyhow... We need a user authority management if we are going to satisfy `teams which all share the same servers, but dont share the same login`. This means server-side\ more complex logic control \ management ui \ bla bla bla... That's too much work for me, I won't do that...
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/1Remote#247
No description provided.