第六步:如果还没安装过 MySQL,必须创建 MySQL 授权表。进入安装目录(/usr/local/mysql)下,执行 bin 目录下的 mysql_install_db 脚本,初始化 MySQL 数据库的授权表,其中,存储了服务器访问允许。
当 MySQL 发生故障或需要新加一个 mysql 实例时,需要初始化 mysql 数据库。使用 --help 可以查看支持的选项。
[root@linuxidc mysql]# cd /usr/local/mysql root@linuxidc mysql]# scripts/mysql_install_db --user=mysql Installing MySQL system tables...2016-02-02 02:42:33 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2016-02-02 02:42:33 0 [Note] ./bin/mysqld (mysqld 5.6.28) starting as process 28034 ... 2016-02-02 02:42:33 28034 [Note] InnoDB: Using atomics to ref count buffer pool pages 2016-02-02 02:42:33 28034 [Note] InnoDB: The InnoDB memory heap is disabled 2016-02-02 02:42:33 28034 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2016-02-02 02:42:33 28034 [Note] InnoDB: Memory barrier is not used 2016-02-02 02:42:33 28034 [Note] InnoDB: Compressed tables use zlib 1.2.3 2016-02-02 02:42:33 28034 [Note] InnoDB: Using Linux native AIO 2016-02-02 02:42:33 28034 [Note] InnoDB: Using CPU crc32 instructions 2016-02-02 02:42:34 28034 [Note] InnoDB: Initializing buffer pool, size = 128.0M 2016-02-02 02:42:34 28034 [Note] InnoDB: Completed initialization of buffer pool 2016-02-02 02:42:34 28034 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created! ……
如果用 root 用户运行上面的命令,应该使用 --user 选项,选项的值应与你在第一步为运行服务器所创建的登录账户(本例是 mysql 用户)相同。如果用 mysql 用户登录,运行上面命令,可以忽略 --user 选项。
用 mysql_install_db 创建 MySQL 授权表后,需要手动重新启动服务器。
如果执行这步时报错,说明你的第三步有问题。
MySQL 目录授权第七步:将 MySQL 安装目录 bin 目录下执行文件的所有权改为 root 用户,数据目录的所有权改为运行 mysqld 程序的 mysql 用户。如果现在位于安装目录(/usr/local/mysql)下,命令行如下。
[root@linuxidc mysql-5.6.28]# cd /usr/local/mysql [root@linuxidc mysql]# pwd /usr/local/mysql
[root@linuxidc mysql]# chown -R root .
[root@linuxidc mysql]# chown -R mysql data
[root@linuxidc mysql]# chgrp -R mysql . [root@linuxidc mysql]# ls -l total 180 drwxr-xr-x 2 root mysql 4096 Feb 2 02:23 bin -rw-r--r-- 1 root mysql 17987 Nov 16 17:38 COPYING drwxr-xr-x 5 mysql mysql 4096 Feb 2 09:20 data drwxr-xr-x 2 root mysql 4096 Feb 2 02:23 docs drwxr-xr-x 3 root mysql 4096 Feb 2 02:23 include -rw-r--r-- 1 root mysql 105684 Nov 16 18:45 INSTALL-BINARY drwxr-xr-x 3 root mysql 4096 Feb 2 02:23 lib drwxr-xr-x 4 root mysql 4096 Feb 1 08:45 man -rw-r--r-- 1 root mysql 943 Feb 1 08:46 my.cnf -rw-r--r-- 1 root mysql 943 Feb 2 02:42 my-new.cnf drwxr-xr-x 10 root mysql 4096 Feb 1 08:45 mysql-test -rw-r--r-- 1 root mysql 2496 Nov 16 17:38 README drwxr-xr-x 2 root mysql 4096 Feb 1 08:45 scripts drwxr-xr-x 28 root mysql 4096 Feb 1 08:45 share drwxr-xr-x 4 root mysql 4096 Feb 1 08:45 sql-bench drwxr-xr-x 2 root mysql 4096 Feb 1 08:45 support-files [root@linuxidc mysql]#
注意第三列的变化。另外,
“chown –R root .”,将文件的所有属性改为 root 用户。注意那个点,表示所有文件;
“chown –R mysql data”,将数据目录的所有属性改为 mysql 用户;
“chgrp –R mysql .”,将组属性改为 mysql 组。注意那个点,表示所有文件。
启动 MySQL到目前为止,所有需要的东西都安装完成,可以启动 MySQL 服务了。
第八步:启动 MySQL。当然,你可以让 MySQL 开机时自动运行,后面介绍。
[root@linuxidc ~]# cd /usr/local/mysql [root@linuxidc mysql]# bin/mysqld_safe --user=mysql [root@linuxidc mysql]#
验证 MySQL 安装下面,验证一下,MySQL 服务是否正常。
第九步:MySQL 数据库服务启动后,查看一下它的端口 3306 是否打开,如果看到以下结果表明 MySQL 服务启动成功了。
[root@linuxidc mysql]# netstat -tnl | grep 3306 tcp 0 0 :::3306 :::* LIST EN [root@linuxidc mysql]#
第十步:使用 mysqladmin 验证服务器是否运行中。以下命令提供了简单的测试,检查服务器是否已经启动并能响应连接。