MySQL在Centos7下的安装与配置
MySQL概要
MySQL是一种关联数据库系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL分为社区版和商业版,由于其性能高、成本低、可靠性好,而被用于在Internet上的中小型网站中。
| MySQL安装方法 | 在线安装 | 二进制包安装 | 源码安装 | 自定制安装 |
|---|---|---|---|---|
| 优点 | 简单,安装快;适合初学者学习使用 | 安装简单,安装路径灵活;一台服务器可以安装多个MySQL | 根据需要可定制编译,路径灵活;一台服务器可以安装多个MySQL;性能最好 | 结合在线和源码安装的优点,将源码制作成符合要求的安装包,放到仓库里实现在线安装 |
| 缺点 | 无法定制,安装路径不灵活,默认路径不能修改,一台服务器只能安装一个MySQL | 已经经过编译,性能不如源码编译的好;不能灵活定制编译参数 | 安装过程相对复杂;编译时间较长 |
MySQL安装与配置
创建mysql用户和账号
添加mysql组:groupadd mysql
添加mysql用户账号:useradd -s /sbin/nologin -g mysql -M mysql
| useradd参数 | 说明 |
|---|---|
| -s /sbin/nologin | 只创建用户角色,禁止用户登录操作系统,增加安全 |
| -g mysql | 创建mysql用户属于mysql组 |
| -M | 不创建用户家目录 |
创建mysql数据存放目录
[root@host01~]# mkdir -pv /mydata/data[root@host01~]# cd /mydata[root@host01 mydata]# chown -R mysql:mysql data/[root@host01 mydata]# chmod 710 data/
安装并初始化MySQL,使用通过二进制格式的MySQL
安装mysql初始化所需的依赖库:[root@host01 mysql]# yum install libaio perl perl-devel –y
下载mysql包,参数-c表示开启断点续传:[root@host01 mysql]# wget -c https://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.32-linux-glibc2.5-x86_64.tar.gz
如下载较慢,请点我在线下载包
解压下载好的包到/mydata目录下,注:要将包移动到路径下再解压:[root@host01 mysql]# tar -zxvf mysql-5.6.32-linux-glibc2.5-x86_64.tar.gz[root@host01 mysql]# cd /usr/local/
创建mysql软连接:[root@host01 local]# ln -sv /mydata/mysql-5.6.32-linux-glibc2.5-x86_64 mysql[root@host01 local]# cd mysql[root@host01 mysql]# chown -R mysql.mysql .
执行脚本初始化MySQL:[root@host01 mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/mydata/data/
如提示错误如下:
[root@localhost mysql]# ./scripts/mysql_install_db –user=mysql –basedir=/usr/local/mysql –datadir=/mydata/data/
FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumper
解决方法:yum install autoconf安装Data:Dumper模块。为了安全,需要把mysql目录下文件属主更改回root用户chown -R root.root .
修改MySQL服务脚本及配置文件
拷贝MySQL服务 脚本并设置开机启动:[root@host01 mysql]# cp ./support-files/mysql.server /etc/init.d/mysqld[root@host01 mysql]# chmod +x /etc/init.d/mysqld[root@host01 mysql]# chkconfig --add mysqld[root@host01 mysql]# chkconfig mysqld on
查看MySQL开机启动代码:[root@host01 mysql]# chkconfig --list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off[root@host01 mysql]# mkdir /var/log/mysql[root@host01 mysql]# mkdir /var/run/mysql
修改mysql配置文件datadir数据目录位置:[root@host01 mysql]# vi /etc/my.cnf
1 | datadir=/mydata/data |
启动mysql服务
[root@host01 mysql]# systemctl start mysqld[root@host01 mysql]# netstat -tnlp | grep 3306
此处如报错:命令未找到,请执行命令安装此工具
yum install -y net-tools
为mysql添加PATH环境变量
新建vi文件,添加内容:[root@host01 mysql]# vi /etc/profile.d/mysql.sh
1 | #!/bin/bash |
添加权限:[root@host01 mysql]# chmod +x /etc/profile.d/mysql.sh
执行mysql.sh:[root@host01 mysql]# . /etc/profile.d/mysql.sh
为mysql添加man帮助及输出头文件和库文件
安装man(或man-pages-zh-CN.noarch):[root@host01 mysql]# yum install man -y
修改配置文件,有的系统中这个文件的名称为man_db.conf:
注:如您的文件为man_db.conf,则下方添加的内容应该为
MANDATORY_MANPATH /usr/local/mysql/man
[root@host01 mysql]# vi /etc/man.configMANPATH /usr/local/mysql/man
验证mysql的man帮助文件:[root@host01 mysql]# man mysql
添加软链接:[root@host01 mysql]# ln -sv /usr/local/mysql/include/ /usr/include/mysql
新建配置文件,添加内容:[root@host01 mysql]# vi /etc/ld.so.conf.d/mysql-x86_64.conf/usr/local/mysql/lib
查看动态链接库:[root@host01 mysql]# ldconfig -v
建立软链接:[root@host01 mysql]# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
登录mysql,没有设置密码,所以直接回车即可:[root@host01 mysql]# mysql -u root -p
默认无密码,可登录mysql后设置密码set password for root@localhost = password('000000');

