设为首页收藏本站

融智技术学院

 找回密码
 注册

QQ登录

只需一步,快速开始

明明白白学编程(C语言)开讲了!!!
搜索
查看: 359|回复: 0

配置邮件服务器(3):初始化数据库

[复制链接]
MrLi 发表于 2013-5-29 17:00:00 | 显示全部楼层 |阅读模式
配置邮件服务器(3):初始化数据库

        本文邮件系统使用MySQL数据库来保存各种信息,主要使用Extman中提供的脚本创建数据库和表,为邮件系统的使用设置数据库环境即可。
        【示例】实例目标:初始化数据库。具体操作步骤如下:
        (1)当前工作目录切换到/var/www/mail/extman/docs/目录,在该目录中有以下两个脚本文件,用来创建数据库、表,并添加相应的测试数据。
        extmail.sql:这个文件中的脚本用来向系统数据库中添加操作员、创建数据库extmail,用来保存邮件系统中的数据(默认创建的数据库、操作员、操作员密码都为extmail)。若对MySQL比较熟练,可修改这些数据。在本系统中就使用该数据库名。如果对数据库名称进行了修改,后面的很多配置文件中对应的数据库名称和操作员名称都需要修改。
        init.sql:这其实是数据库导出的一个文本文件,其中包含了邮件系统的初始域名、管理员邮箱、管理员等信息。
        (2)使用以下命令启动MySQL数据库服务器。
  1. #  service  mysqld  start
复制代码
使用以下命令将mysqld过程添加到自启动中。
  1. #  chkconfig  mysqld  on
复制代码
(3)修改init.sql文件,使其符合自己邮件系统的需要。如本章的实例中,邮件域名为wyh.com,管理员为root@wyh.com。可用vi编辑器打开init.sql文件对其进行修改。从打开的文件内容可看到,在该文件中对3个表进行了修改:
  1.         domain:保存邮件的虚拟域名。
  2.         mailbox:保存每个用户的邮箱,包括邮箱名、登录密码、属于哪个域等信息。
  3.         manager:用来保存后台管理员的信息。
复制代码
修改的内容如下:
  1. use extmail;
  2. /*!40000 ALTER TABLE `alias` DISABLE KEYS */;
  3. LOCK TABLES `alias` WRITE;
  4. INSERT INTO `alias` VALUES ('support@wyh.com','postmaster@wyh.com','wyh.com','2007-02-14 15:10:04',1);
  5. UNLOCK TABLES;
  6. /*!40000 ALTER TABLE `alias` ENABLE KEYS */;

  7. /*!40000 ALTER TABLE `domain` DISABLE KEYS */;
  8. LOCK TABLES `domain` WRITE;
  9. INSERT INTO `domain` VALUES ('wyh.com','virtualDomain for wyh.com',
  10. 'A0/B0',50,50,1073741824,1073741824,NULL,'1','5242880','5242880','1y','0','0','0','0','1','0','2007-02-14 15:10:04','2010-11-08',1);
  11. UNLOCK TABLES;
  12. /*!40000 ALTER TABLE `domain` ENABLE KEYS */;

  13. /*!40000 ALTER TABLE `mailbox` DISABLE KEYS */;
  14. /* postmaster@wyh.com password is extmail */
  15. LOCK TABLES `mailbox` WRITE;
  16. INSERT INTO `mailbox` VALUES
  17. ('postmaster@wyh.com','postmaster','$$1$$HReUXySn$$ETvvbTNZLCC14MJPBZqeh/','','PostMaster','','wyh.com/postmaster/Maildir/','wyh.com/postmaster','104857600S','52428800S','wyh.com',1000,1000,'2009-10-01 15:10:04','2010-10-01',1,0,0,0,0,0,0,0,'my question','my answer');
  18. UNLOCK TABLES;
  19. /*!40000 ALTER TABLE `mailbox` ENABLE KEYS */;

  20. /*!40000 ALTER TABLE `manager` DISABLE KEYS */;
  21. /* root@wyh.com password is extmail*123* */
  22. LOCK TABLES `manager` WRITE;
  23. INSERT INTO `manager` VALUES ('root@wyh.com',
  24. '$$1$$HReUXySn$$ETvvbTNZLCC14MJPBZqeh/','admin','root','Super User','my question','my answer','0','2009-10-01 15:10:04','2010-10-01',1);
  25. UNLOCK TABLES;
  26. /*!40000 ALTER TABLE `manager` ENABLE KEYS */;
  27. 在以上内容中,以下部分向表domain中插入一条记录,设置域名(原软件包中设置的域名为extmail.org,将其替换为要使用的wyh.com即可):
  28. INSERT INTO `domain` VALUES ('wyh.com','virtualDomain for wyh.com','
  29. A0/B0',50,50,1073741824,1073741824,NULL,'1','5242880','5242880','1y','0','0','0','0','1','0','2007-02-14 15:10:04','2010-11-08',1);
复制代码
以下部分向表mailbox中插入一条记录,设置一个邮箱用户(原软件包中设置的用户为postmaster@extmail.org,将extmail.org替换为wyh.com,并修改密码为对应的字符串——密码root的加密字符串)。
  1. INSERT INTO `mailbox` VALUES
  2. ('postmaster@wyh.com','postmaster','$$1$$HReUXySn$$ETvvbTNZLCC14MJPBZqeh/','','PostMaster','','wyh.com/postmaster/Maildir/','wyh.com/postmaster','104857600S','52428800S','wyh.com',1000,1000,'2009-10-01 15:10:04','2010-10-01',1,0,0,0,0,0,0,0,'my question','my answer');
  3. 类似的,以下部分向表manager中插入一条记录,设置后台管理用户名的账户和密码。
  4. INSERT INTO `manager` VALUES ('root@wyh.com',
  5. '$$1$$HReUXySn$$ETvvbTNZLCC14MJPBZqeh/','admin','root','Super User','my question','my answer','0','2009-10-01 15:10:04','2010-10-01',1);
  6. 提示:以上数据是笔者配置好以后导出的数据库,所以可以看到加密后的密码文本。为了方便管理,初始密码设置为root。而init.sql文件中原来的数据是密码为“extmail*123*”的加密文本。
复制代码
(3)在表mailbox中插入了一条记录,该条记录表示有一个邮箱用户:postmaster@wyh.com,在这条记录中设置了这个邮箱用户保存邮件的文件夹为:wyh.com/postmaster/Maildir/,这里使用的是一个相对路径,其绝对路径是从/home/domains开始的,即保存用户postmaster的邮件的位置是/home/domains/wyh.com/postmaster/Maildir/,而该目录还不存在,需使用/var/www/mail/extman/tools/目录中的一个脚本来创建,具体命令如下:
  1. #  /var/www/mail/extman/tools/maildirmake.pl  /home/domains/wyh.com/postmaster/Maildir
复制代码
(4)接着用如下命令修改新创建的目录的所有者。
  1. #  chown  -R  vuser:vgroup  /home/domains
复制代码
(5)还需使用以下命令创建一个临时文件夹。
  1. #  mkdir  /tmp/extman
  2. #  chown  -R  vuser:vgroup  /tmp/extman
复制代码
提示:临时文件夹的位置在/var/www/mail/extman/webman.cf文件中设置,若要改变临时文件夹的位置,需修改该文件对应的设置。
        (6)使用以下命令执行脚本extmail.sql和init.sql,创建好数据库和表,并添加初始数据记录。
  1. #  mysql  -u  root  -p  <  extmail.sql
  2. #  mysql  -u  root  -p  <  init.sql
复制代码
执行以上命令后,输入MySQL管理员密码,将执行一个脚本,完成相应的操作。操作过程如图2所示。

图2  导入数据库

您需要登录后才可以回帖 登录 | 注册

本版积分规则

新突破电商

小黑屋|手机版|Archiver|融智技术学院 ( 京ICP备09018999号  

GMT+8, 2018-1-19 05:59

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表