MySQL的几个常用安装包:rpm、源码、二进制免编译
创新互联公司从2013年创立,先为广昌等服务建站,广昌等地企业,进行企业商务咨询服务。为广昌企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
步骤(二进制免编译):
①
cd /usr/local/src
进入/usr/local/src目录下
②
wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
下载二进制免编译源码包
③
tar zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
解压源码包
④
mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql
将解压的源码包 移动到/usr/local/mysql目录下
⑤
cd /usr/local/mysql
进入/usr/local/mysql目录
⑥
useradd mysql
建立mysql用户,因为启动mysql需要该用户
⑦
mkdir /data/mysql
创建datadir,数据库文件会放到这里
chown -R mysql:mysql /data/mysql
更改权限
⑧
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
命令执行后,执行echo $? 如果返回结果为0(或者两个ok),说明安装成功
如果报错,根据报错提示安装一些软件包
第一次安装提示
perl: warning: Falling back to the standard locale ("C"). FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_instal_db: Data::Dumper
查找这个包,使用yum安装
[root@localhost mysql]# yum list |grep perl |grep -i dumper Failed to set locale, defaulting to C perl-Data-Dumper.x86_64 2.145-3.el7 base perl-XML-Dumper.noarch 0.81-17.el7 base [root@localhost mysql]# yum install -y perl-Data-Dumper.x86_64
⑨
cp support-files/my-default.cnf /etc/my.cnf
mysql的配置文件为my.cnf
⑩
cp support-files/mysql.server /etc/init.d/mysqld
mysql启动脚本文件
⑪
vi /etc/init.d/mysqld
定义basedir和 datadir
basedir指定mysql的程序目录
datadir 指定存放数据的地方
⑫
/etc/init.d/mysqld start(stop)
启动mysql
或者可以用service mysqld start (stop)
如果没有启动脚本,可以使用命令行的方式
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysql &
--defaults-file指定配置文件所在路径
-user指定用户
datadir指定mysql的数据目录
如果使用命令行启动,关闭mysql服务,则使用killall mysqld,killall会等数据读写完成后,再杀进程
如果mysqld的进程始终杀不死,ps还有进程,那说明数据量很大,正在慢慢的写入磁盘中,不要强制kill -9 强制杀死,否则可能丢失数据 或者损坏表
⑬把启动脚本加入系统服务项,设定开机启动并启动mysql
chkconfig -add mysqld
//把mysql服务加入到系统服务列表中
chkconfig mysqld on
//使其开机启动
如果mysql启动不了,请到/data/mysql目录下查看错误日志,日志名通常是主机名.err。检查mysql是否启动的命令为
ps aux |grep mysql
//结果应大于两行
netstat -lnp |grep 3306
//看看有没有监听3306端口
chkconfig mysqld on
//使其开机启动
如果mysql启动不了,请到/data/mysql目录下查看错误日志,日志名通常是主机名.err。检查mysql是否启动的命令为
ps aux |grep mysql
//结果应大于两行
netstat -lnp |grep 3306
//看看有没有监听3306端口