下了一个1.9的最新版打算拿来开源做个项目玩玩,我不是通过正规流程安装的而是直接运行,发现创建的数据库居然是空的没有管理员帐户,进不去也是尴尬得一比。怎么解呢?
首先写个翻译MD5密码字段的程序:放到你的网站根目录下面文件名例如pass.php,填入你要生成的密码访问这个页面会得到转换过来的MD5密码字段
<?php
// test.php
define('MAGENTO_ROOT', getcwd());
$mageFilename = MAGENTO_ROOT . '/app/Mage.php';
include $mageFilename;
Mage::app();
$pass = 'YOUR_PASS'; // the password which you want to use to login
Zend_Debug::dump(Mage::helper('core')->getHash($pass, 2));
第二步去到你的数据库执行创建管理员的sql:
INSERT INTO
admin_user
SET
firstname = "Zhao",
lastname = 'Chi',
email = 'blabla@gmail.com',
username = 'username',
password = '4adb93b65c6cc162f82ec42908a3434c765c3f8c3eba903ac9a93cafaf0130dbdbd7:6ufdZDZA3x0mvh9KDgZ4J1ODyzNeWoQN', -- or MD5('ADMIN_PASS') on comunity edition
is_active = 1,
extra = 'a:1:{s:11:"configState";a:12:{s:19:"carriers_matrixrate";s:1:"0";s:18:"carriers_tablerate";s:1:"0";s:17:"carriers_flatrate";s:1:"0";s:21:"carriers_freeshipping";s:1:"1";s:12:"carriers_ups";s:1:"1";s:13:"carriers_usps";s:1:"0";s:14:"carriers_fedex";s:1:"0";s:12:"carriers_dhl";s:1:"0";s:17:"amsorting_general";s:1:"1";s:15:"general_country";s:1:"1";s:14:"general_locale";s:1:"0";s:25:"general_store_information";s:1:"0";}}';
脚本执行成功后去admin_user表里面查找刚才新建的用户id为1
第三步分配权限:执行sql脚本
INSERT INTO
admin_role
SET
parent_id = 1,
tree_level = 2,
sort_order = 0,
role_type = 'U',
user_id = 1, -- created in the previous step
role_name = 'admin';
然后就可以登录后台了