5.3 启动MySQL数据库系统

为了安全起见,建议用户建立MySQL的用户组和用户名,不要轻易使用root账户启动MySQL服务器。

5.3.1 建立MySQL的用户组和用户名

用户可以建立一个专门用于MySQL的用户组和用户名,用于启动和关闭MySQL数据库,以及对数据库进行的一些操作。建立用户组可以使用如下命令:

    #groupadd mysql       //创建mysql组

命令执行完毕后用户可以查看/etc/group文件,正确添加用户组后,用户可以在该文件中看到类似于以下的一行内容:

    mysql :x :101:

添加了用户组后,接着应该添加用户。在Linux下添加用户使用useradd命令。此处,添加一个名为mysql的用户,使用的命令如下:

    #useradd -g mysql mysql

该命令用于创建mysql用户,并放到mysql组里。-g参数选项用于指定一个组名,并将新建的用户添加到该组,作为该组的一个成员。

5.3.2 建立MySQL的软链接

为了方便用户的使用,建议用户建立一个到MySQL的软链接。软链接在Linux中实际上就是一个文件,其内容就是另一个文件(称为被链接文件)的完整文件标志符。当用户访问该文件时,不是直接访问其内容,而是访问其内容所描述文件的内容。建立一个链接到MySQL的软链接后,用户就可以通过该软链接访问MySQL,这样就不必记忆类似于/usr/local/mysql-standard-4.1.12-pc-linux-gnu- i686-icc-glibc23这样冗长烦琐的命令了。建立一个软链接,名为mysql,使用的命令如下:

    #ln -s mysql-standard-4.1.12-pc-linux-gnu-i686-icc-glibc23 mysql

该命令在当前目录下新建一个指向mysql-standard-4.1.12-pc-linux-gnu-i686-icc-glibc23目录的软链接,可以理解为两个具有完全相同内容的两个目录。但是实际上软链接mysql并不保存其目录下所有文件的信息,其只是一个链接文件,文件的内容就是指向的目录mysql-standard-4.1.12-pc-linux-gnu-i686-icc-glibc23。当用户浏览mysql这个软链接的时候,系统首先读取软链接文件的内容,知道其只是一个指向另外一个名为mysql-standard-4.1.12-pc-linux-gnu-i686-icc-glibc23的目录,然后再读取实际目录mysql-standard-4.1.12-pc-linux-gnu-i686-icc-glibc23下所有文件的内容,并显示出来。

这样,下次需要访问目录mysql-standard-4.1.12-pc-linux-gnu-i686-icc-glibc23下文件时,就只有简单的改变当前目录到mysql即可执行实际目录mysql-standard-4.1.12-pc-linux-gnu-i686-icc-glibc23下的命令。

5.3.3 设置用户访问权限

欲使新添加的用户mysql能够对MySQL数据库进行操作,必须使mysql用户具有对相应文件和目录的访问权限。为了方便,建议将上述建立的软链接mysql所在目录及该目录下所有文件和子目录的所有者都改为mysql,所在组都改为mysql。更改过程及其显示结果如下:

    //将当前目录切换到/usr/local
    #cd /usr/local
    //显示当前目录下mysql软链接的属性
    //从显示结果可以看出,其所有者及其组均为root
    #ll mysql
    lrwxrwxrwx   1 root    root         51  7月 15 22:06 mysql ->
    mysql-standard-4.1.12-pc-linux-gnu-i686-icc-glibc23
    //更改当前目录及其所有子目录和文件所有者为mysql
    #chown -R mysql .
    //显示当前目录下mysql软链接的属性
    //从显示结果可以看出,其所有者已经改为mysql
    #ll mysql
    lrwxrwxrwx   1 mysql   root         51  7月 15 22:06 mysql ->
    mysql-standard-4.1.12-pc-linux-gnu-i686-icc-glibc23
    //更改当前目录及其所有子目录和文件所在组为mysql
    #chgrp -R mysql .
    //显示当前目录下mysql软链接的属性
    //从显示结果可以看出,其所在组已经改为mysql
    #ll mysql
    lrwxrwxrwx   1 mysql   root         51  7月 15 22:06 mysql ->
                        mysql-standard-4.1.12-pc-linux-gnu-i686-icc-glibc23

5.3.4 启动MySQL

有了上述的设置后,就可以启动MySQL了。此处讲述用上述方式建立的mysql用户启动MySQL。改变当前目录到/usr/local/mysql目录,可以看到该目录下有bin文件夹。使用命令及显示结果如下:

    #cd /usr/local/mysql
    #ls
        bin docs
    #cd bin
    #ls
      myisamchk             mysqlbug                  mysql_fix_privilege_tables
      myisamlog             mysqlcheck                mysqlhotcopy
      myisampack            mysql_config              mysqlimport
      my_print_defaults     mysql_convert_table_format    mysql_install_db
      mysql                 mysqld_multi              mysql_setpermission
      mysqlaccess           mysqldump                 mysqlshow
      mysqladmin            mysqldumpslow             mysqltest
      mysqlbinlog           mysql_find_rows           mysql_zap
    #safe_mysqld -u mysql&

带-u mysql参数的safe_mysql命令表示使用mysql用户启动MySQL服务器,&表示让服务器在后台运行。