The Community Forums

Interact with an entire community of cPanel & WHM users!
  1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

11.28 Backwards Incompatible Change - Technical Advisory

Discussion in 'cPanel Announcements' started by cPanelDavidG, May 12, 2010.

  1. cPanelDavidG

    cPanelDavidG Technical Product Specialist

    Joined:
    Nov 29, 2006
    Messages:
    11,279
    Likes Received:
    8
    Trophy Points:
    38
    Location:
    Houston, TX
    cPanel Access Level:
    Root Administrator
    Edited to reflect Version Number Designation Changes July 29, 2010

    With version 11.28, cPanel introduces the Database Mapping feature. This feature lays the groundwork for providing more flexibility in naming databases and database users.

    In the past, cPanel has always appended an account's username to any database name or database username created by the account (for example, a database might be named "user_dbname"). This changes with the addition of the Database Mapping feature.

    In cPanel 11.28, Database Mapping provides the following benefits:

    1. Accounts transferred from non-cPanel servers, such as those running Plesk or Ensim, will no longer have the cPanel account name added as a prefix to the names of databases and database users. This means applications like blogs and forums should work with minimal (or no) changes after transfer.

    2. Server owners can disable use of the database name prefix server-wide. If a server owner chooses this option, databases and database users will no longer be created with the cPanel account as a prefix (for example, a database could be named "dbase" instead of "user_dbase"). This option is not reversible.

    Both the above features will make a server incompatible with older versions of cPanel. If either 1) a non-cPanel account is transferred to an 11.28 server, or 2) the server owner opts to disable prefixing, then that server will not be able to later downgrade to 11.25.0.

    Likewise, transferring an account from a cPanel system that does not use the database prefix to one that does (e.g., cPanel 11.28 with prefixing disabled, to cPanel 11.25.0) will result in support issues. Databases and database users whose names lack the prefix will not be manageable in the cPanel interface.

    Further information about Database Mapping will be published in the coming weeks.
     
    #1 cPanelDavidG, May 12, 2010
    Last edited by a moderator: Jul 29, 2010
  2. Spiral

    Spiral BANNED

    Joined:
    Jun 24, 2005
    Messages:
    2,023
    Likes Received:
    7
    Trophy Points:
    0
    If you are going to start allowing for non-prefixed names, how do you plan to get around to problem of name conflicts?

    (IE: multiple accounts having the same database / logins)
     
  3. cPanelDavidG

    cPanelDavidG Technical Product Specialist

    Joined:
    Nov 29, 2006
    Messages:
    11,279
    Likes Received:
    8
    Trophy Points:
    38
    Location:
    Houston, TX
    cPanel Access Level:
    Root Administrator
    As mentioned in yesterday's webinar (recording available at Webinars - cPanel Inc.), if a database name or username is in use, then no one else can create a database with that name/username. An error is generated and the user must select a new name/username.
     
  4. yapluka

    yapluka Well-Known Member

    Joined:
    Dec 24, 2003
    Messages:
    301
    Likes Received:
    1
    Trophy Points:
    18
    Location:
    France
    cPanel Access Level:
    Root Administrator
    Existing db and dbusers created earlier with the prefix wouldn't change, right ?

    Also, would the users still be able to create their db and dbusers with a prefix if they want to ? ie : would the character "_" be accepted ?

    Thank you :)
     
  5. cPanelDavidG

    cPanelDavidG Technical Product Specialist

    Joined:
    Nov 29, 2006
    Messages:
    11,279
    Likes Received:
    8
    Trophy Points:
    38
    Location:
    Houston, TX
    cPanel Access Level:
    Root Administrator
    As discussed at yesterday's webinar (recording available at Webinars - cPanel Inc.), this will not influence existing database usernames nor existing database names. After you choose to drop prefixing support, users can use any database name and database username they want (within the capabilities of MySQL), including user_dbname.
     
  6. alinford

    alinford Well-Known Member

    Joined:
    Nov 4, 2006
    Messages:
    50
    Likes Received:
    1
    Trophy Points:
    8
    I like prefixes on db's from a support standpoint, so would like to leave that option on, but I also need to move accounts over from non cPanel servers.

    When db's are moved from non cPanel servers, they will come in without prefixes. Will I need to update those db's, or will those db's work, but force newly created db's in the account to have prefixes?
     
  7. cPanelDavidG

    cPanelDavidG Technical Product Specialist

    Joined:
    Nov 29, 2006
    Messages:
    11,279
    Likes Received:
    8
    Trophy Points:
    38
    Location:
    Houston, TX
    cPanel Access Level:
    Root Administrator
    Databases from non-cPanel servers will always maintain their names, even when prefixing is enabled.

    Even when you have not opted in to allowing your users to create databases without prefixes, when you import accounts from non-cPanel servers, their databases will come in without prefixes and still be accessible to those customers (respectively). This helps make the migration process to cPanel easier for your migrated customers. However, any new database they create would still require the prefixing since the prefixing requirement for new databases is governed by the tweak setting.
     
  8. cPanelDavidN

    cPanelDavidN Integration Developer
    Staff Member

    Joined:
    Dec 17, 2009
    Messages:
    571
    Likes Received:
    1
    Trophy Points:
    18
    Location:
    Houston, TX
    cPanel Access Level:
    Root Administrator
    For in-depth coverage of how DB Mapping works, you can check the white paper on our software release page: Software Releases - cPanel Inc.

    Regards,
    -DavidN
     
  9. n8whnp

    n8whnp Member
    Staff Member

    Joined:
    Sep 2, 2007
    Messages:
    13
    Likes Received:
    0
    Trophy Points:
    1
    DavidN,

    I am really sad to see how this feature was implemented. It strikes me that cPanel could have spent a bit more time and made the db-mapping infrastructure much more useful. I hope that as the work continues you will refine these functions.

    The current design solves one issue: Importing customers from other controls panels to cPanel without changing their configuration. However you missed solving a much more frequent and vexing issue for us, which is splitting one cpanel user account with 100 addon domains into 100 different cpanel accounts.

    We deal with customers all the time who have added lots of addon domains to a single cpanel account and then are hitting process limits or other account restrictions and want to split their single cpanel account into multiple accounts.

    Most of the parts of the hosting account are clear about which domain they are linked to. For example I can process the email_accounts.yaml and get a list of email accounts just for that domain, if I wanted the public_html yaml, can do that as well. The central problem I have is finding out which databases are linked to what domains. What I need is a sophisticated database mapping system.

    If you are going to break backwards compatibility, why not go all the way and give us a db-mapping system that covers db-> domains as well as db-> cpanel username.

    And before you recommend some script that trawls the account, find references to databases and makes these links dynamically - if it were easy to trawl accounts and change db_usernames / db_names you would have written that import code instead of breaking compatibility for all of your users, right?

    Nate
     
  10. cPanelDavidG

    cPanelDavidG Technical Product Specialist

    Joined:
    Nov 29, 2006
    Messages:
    11,279
    Likes Received:
    8
    Trophy Points:
    38
    Location:
    Houston, TX
    cPanel Access Level:
    Root Administrator
  11. Dan_EZPZ

    Dan_EZPZ Member

    Joined:
    May 8, 2008
    Messages:
    18
    Likes Received:
    0
    Trophy Points:
    1
    How would this work if a cPanel account is moved from a host that does allow DBs without the username to a host that hasn't enabled this feature?

    Would the username be added to the database when the account is restored?
     
  12. victomeyezr

    victomeyezr Well-Known Member

    Joined:
    Sep 25, 2008
    Messages:
    54
    Likes Received:
    0
    Trophy Points:
    6
    If we upgrade an existing server, then set toe db usernames to disable the prefix, what will that do to exsiting db's and cpanel accounts?
     
  13. cPanelDavidG

    cPanelDavidG Technical Product Specialist

    Joined:
    Nov 29, 2006
    Messages:
    11,279
    Likes Received:
    8
    Trophy Points:
    38
    Location:
    Houston, TX
    cPanel Access Level:
    Root Administrator
    It will not affect existing databases (including not affecting their database names of username_dbname). However, disabling the prefix will allow all cPanel accounts to create databases without that username_ prefix.
     
  14. rgpayne

    rgpayne Well-Known Member

    Joined:
    Feb 25, 2003
    Messages:
    73
    Likes Received:
    0
    Trophy Points:
    0
    Location:
    Texas
    I think you are wrong David

    We did the exact thing above and it screw the server box
    fantasico will not install and database related script ( ie. word press )
    It has been a night mare
     
  15. cPanelDavidN

    cPanelDavidN Integration Developer
    Staff Member

    Joined:
    Dec 17, 2009
    Messages:
    571
    Likes Received:
    1
    Trophy Points:
    18
    Location:
    Houston, TX
    cPanel Access Level:
    Root Administrator
    Hi rgpayne,

    That's unfortunate to hear. However, DavidG is correct in his statement. The databases that were created before prefixing was disable are still accessible through the cPanel UI and APIs. Their names or privileges haven't changed within MySQL.

    Fantastico is not maintained by cPanel. If the developers of Fantastico chooses to not utilize our APIs or do continuous development against our features (in early release builds, like the BETA and EDGE release tiers), there isn't much we can do about that.

    Have you read the DB Mapping white paper? Did you opened a support ticket? I don't know how long your server has been in the prefixing disabled state, but if you ask for specific help we will try to accommodate your request, whether it's hear in the forums or through our Technical Support.

    Regards,
    -DavidN
     
  16. melisa12345

    melisa12345 Registered

    Joined:
    Aug 17, 2011
    Messages:
    3
    Likes Received:
    0
    Trophy Points:
    1
    the users still be able to create their db and dbusers with a prefix if they want to..?
    i.e : would the character "_" be accepted ?

    :confused:
     
  17. cPanelDavidG

    cPanelDavidG Technical Product Specialist

    Joined:
    Nov 29, 2006
    Messages:
    11,279
    Likes Received:
    8
    Trophy Points:
    38
    Location:
    Houston, TX
    cPanel Access Level:
    Root Administrator
    Yes, you can still have database names beginning with user_ but that is not required once database prefixing is disabled/database mapping is enabled.
     
  18. aminakis

    aminakis Registered

    Joined:
    Nov 16, 2011
    Messages:
    3
    Likes Received:
    0
    Trophy Points:
    1
    cPanel Access Level:
    Website Owner
    This is a great update - I'm excited for it!
     

Share This Page