Version 4

Migrating Users Between Bitweaver Sites

One-time copy of users.

Created by: Anonymous, Last modification: 17 May 2008 (13:40 UTC) by sikko

Watch out, work in progress, not functional yet, waiting for more info/help. If you have more info toward a solution, please mail me at sikko at gmx dot net


Use case: Bitweaversite1 has a lot of users in its db. The site is being migrated to a new one, without all the previous data. The new site has to have all the old users though, so they can still login using the IDs they had before.
Use case 2: Bitweaversite1 userbase is being merged with Bitweaversite2, and all users need to be imported into one userlist, but no content has to be added.

Steps to go through:

  • In phpMyAdmin export user list.
    • Open your db to extract the users from.
    • Select tab "SQL"
    • enter "SELECT `login`,`email`,`real_name`,`hash`,`registration_date` FROM `users_users` WHERE 1"
    • Push Eport
    • Make sure the output is CSV, "export table titles as first row" is checked, delimiter is ",", and check "download" button, no compression. Press start to export the list, and save.
    • Enter the saved file and remove the lines of users "root", "guest" and "admin"
  • Importing the exported userlist
    • Goto http://example.com/users/admin/users_import.php
    • Enter the saved file into the filename field.
    • Choose the bottom item "do not mail users".
    • Press import.

Problems till now:
  • When importing,
    • error: Warning: filesize() function.filesize: stat failed for /path/storage/users/4/4/images/2/users.csv in /path/liberty/liberty_lib.php on line 589
    • Per import line error: Could not store file: users.csv.
  • After this import the first imported user is in the user list, other ones are not. Below the userlist is the notion: Total number of entries: xx where xx is the number of users there are supposed to be.
  • When re-importing the same list, i get an error for every imported user: The username "xxx" is already in use,The email address "xxx@example.com" has already been registered.

So the users are in the db, but they arent recognized as users.

If more info is needed to fix, ill be glad to help out.

Used import data:
"login","email","real_name","hash","registration_date"
"user1","user1@example.com",NULL,"pw_hash1","1143543281"
"user2","user2@example.com",NULL,"pw_hash2","1143567722"

Update:
  • One user at a time gets imported. with more i get errors about not able to store CSV file.
  • When importing "NULL" as real_name, it fills in "NULL" as the realname, so if realname isnt used, remove from the CSV file.

Help from the import page:

You can batch import users by uploading a CSV (comma-separated values) file. The file needs to have the column names in the first line. The column titles need to match with fields in 'users_users' table. Login, password and email are required fields, however if you leave the password field empty a new password will be auto generated. You can also import a MD5 hash as password, like from phpBB2, it need to be put in the 'hash' column. In such case it override other options and it's assumed the user or at least admin knows the password. Currently you can't import custom fields and if a non-existent field is specified, it's ignored.
Page History
Date/CommentUserIPVersion
17 May 2008 (15:33 UTC)
small fixes
sikko82.171.211.210
Current • Source
Will69.203.72.1618
View • Compare • Difference • Source
sikko82.171.211.27
View • Compare • Difference • Source
sikko82.171.211.26
View • Compare • Difference • Source
sikko82.171.211.25
View • Compare • Difference • Source
sikko82.171.211.24
View • Compare • Difference • Source
sikko82.171.211.21
View • Compare • Difference • Source