费话不多说,步骤如下
本次安装采用的是二进制方式部署安装的,这种安装方式是最常用的也是最常见的,我用的Mysql版本是mysql-5.5.32-linux2.6-x86_64.tar,具体软件包怎么获取那就看各位了
1.第一步先要做啥,最重要的一步就是先看下磁盘挂载情况,命令:df -hT,如果磁盘没有挂载的话是插件装不上去的.
2.第二步,创建mysql用户的账号
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -s /sbin/nologin -g mysql -M mysql
[root@localhost ~]# tail -1 /etc/passwd
mysql❌501:501::/home/mysql:/sbin/nologin
[root@localhost ~]# id mysql
uid=501(mysql) gid=501(mysql) groups=501(mysql)
3.采用二进制方式安装MySQL
[root@localhost ~]# tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz -C /usr/local/
[root@localhost ~]# cd /usr/local/
[root@localhost local]# mv mysql-5.5.32-linux2.6-x86_64 mysql-5.5.32
[root@localhost local]# ln -s mysql-5.5.32 mysql
[root@localhost local]# ls
bin games lib libexec mysql-5.5.32 nginx-1.10.2 share
etc include lib64 mysql nginx sbin src
[root@localhost local]# cd /usr/local/mysql
[root@localhost mysql]# ls
bin data include lib mysql-test scripts sql-bench
COPYING docs INSTALL-BINARY man README share support-files
#提示:
二进制安装包,仅需要解压就可以了,不需要执行cmake/configure,make,make install等过程
当安装LNMP一体化环境时,MySQL数据库要装在Nginx所在的机器上。如果MySQL和Nginx不在一台机器上,那么,Nginx服务器上的MySQL数据库软件包只要解压移动到/usr/local/目录,改名为mysql就可以了,不需要进行后面的初始化配置。
在非一体的LNMP环境(Nginx和MySQL不在一台机器上),编译PHP环境时,也是需要MySQL数据库环境的,但是高版本的PHP,例如5.3版本以上,内置了PHP需要的MySQL程序,因此,对于此类版本就不需要在Nginx服务器上安装MySQL软件了,只需要在编译PHP时指定相关参数即可。这个PHP的编译参数为--with-mysql=mysqld,表示PHP程序在编译时会调用内置的MySQL的库。
4.初始化MySQL配置文件my.cnf
命令如下:
[root@localhost ~]# cd /usr/local/mysql
[root@localhost mysql]# ls -l support-files/*.cnf
-rw-r--r--. 1 7161 wheel 4691 Jun 19 2013 support-files/my-huge.cnf
-rw-r--r--. 1 7161 wheel 19759 Jun 19 2013 support-files/my-innodb-heavy-4G.cnf
-rw-r--r--. 1 7161 wheel 4665 Jun 19 2013 support-files/my-large.cnf
-rw-r--r--. 1 7161 wheel 4676 Jun 19 2013 support-files/my-medium.cnf
-rw-r--r--. 1 7161 wheel 2840 Jun 19 2013 support-files/my-small.cnf
[root@localhost mysql]# /bin/cp support-files/my-small.cnf /etc/my.cnf
提示:
-
support-files下有my.cnf的各种配置样例。
-
使用cp全路径/bin/cp,可实现拷贝而不出现替换提示,即如果有重名文件会直接覆盖
-
本例为测试安装环境,因此选择参数配置小的my-small.cnf配置模版,如果是生产环境可以根据硬件选择更高级的配置文件,上述配置文件模版对硬件的要求从低到高依次为:
my-medium.cnf (最低)
my-small.cnf
my-large.cnf
my-huge.cnf
my-innodb-heavy-4G.cnf(最高)
5.初始化MySQL数据库文件
初始化命令如下:
[root@localhost ~]# mkdir -p /usr/local/mysql/data #建立MySQL数据文件目录
[root@localhost ~]# chown -R mysql.mysql /usr/local/mysql #授权mysql用户管理MySQL的安装目录
[root@localhost ~]# yum -y install libaio #光盘源安装依赖包,否则下一步的编译会报错
[root@localhost ~]# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
#初始化MySQL数据库文件,会有很多信息提示,如果没有ERROR级别的错误,会有两个OK的字样,表示初始化成功,否则就要解决初始化的问题
初始化内容如下:
Installing MySQL system tables…
OK
Filling help tables…
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/local/mysql/bin/mysqladmin -u root password ‘new-password’
/usr/local/mysql/bin/mysqladmin -u root -h localhost password ‘new-password’
Alternatively you can run:
/usr/local/mysql/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
See the manual for more instructions.
You can start the MySQL daemon with:
cd /usr/local/mysql ; /usr/local/mysql/bin/mysqld_safe &
You can test the MySQL daemon with mysql-test-run.pl
cd /usr/local/mysql/mysql-test ; perl mysql-test-run.pl
Please report any problems with the /usr/local/mysql/scripts/mysqlbug script!
出现上面的两个OK就算成功了.
6.下面就是对Mysql的配置
(1)设置MySQL启动脚本,命令如下:
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld
#拷贝MySQL启动脚本到MySQL的命令路径
[root@localhost mysql]# chmod +x /etc/init.d/mysqld
#使脚本可执行
(2)MySQL二进制默认安装路径是/usr/local/mysql,启动脚本里是/usr/local/mysql。如果安装路径不同,那么脚本里路径等都需要替换
(3)启动MySQL数据库,命令如下:
[root@localhost mysql]# /etc/init.d/mysqld start
Starting MySQL… SUCCESS!
以上是启动数据库的规范方法之一,但还可以用如下方式启动,
/usr/local/mysql/bin/mysqld_safe --user=mysql &
这个命令结尾的“&”符号,作用是在后台执行MySQL服务,命令执行完还需要按下回车才能进入命令行状态。
(4)检查MySQL数据库是否启动,命令如下:
[root@localhost mysql]# netstat -antup | grep mysql
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 1702/mysqld
如果发现3306端口没起来,请tail -100 /usr/local/mysql/data/主机名.err查看日志信息,看是否有报错信息,然后根据相关错误提示进行调试。经常查看服务运行日 志是个很好的习惯,也是高手的习惯。
(5)设置MySQL开机自启动,命令如下:
[root@localhost mysql]# chkconfig --add mysqld
[root@localhost mysql]# chkconfig mysqld on
[root@localhost mysql]# chkconfig --list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
提示:也可以将启动命令/etc/init.d/mysqld start 放到/etc/rc.local里面
(6)配置mysql命令的全局使用路径,命令如下:
[root@localhost mysql]# ln -s /usr/local/mysql/bin/* /usr/local/bin/
[root@localhost mysql]# which mysqladmin
/usr/local/bin/mysqladmin
(7)登陆MySQL测试,命令如下:
[root@localhost mysql]# mysql #直接输入命令即可登陆
(8)为MySQL的root用户设置密码,命令如下:
[root@localhost mysql]# mysqladmin -u root password ‘123123’ #设置密码