第三节:Centos下安装Mysql5.6数据库

1、下载mysql5.6版本

【官网-需要什么版本自己去找】https://dev.mysql.com/downloads/mysql/5.6.html

【版本】linux通用

cd /usr/local/
wget https://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.49-linux-glibc2.12-x86_64.tar.gz

2、解压文件

tar -zxvf mysql-5.6.49-linux-glibc2.12-x86_64.tar.gz

3、将文件拷贝到 /usr/local/mysql下(很关键,对于小白来说可以省很多事)

mv mysql-5.6.49-linux-glibc2.12-x86_64 mysql

4、创建用户组,添加mysql用户到mysql组

groupadd mysql 
useradd -r -g mysql mysql

5、修改文件权限(将mysql权限全部交到mysql用户)

cd /usr/local/mysql 
chown -R mysql:mysql ./

6、安装 mysql 程序(在scripts目录下执行)

cd /usr/local/mysql/scripts 
./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

7、将my.cnf 移动到 /etc/下(默认的配置文件读取地址在/etc/下) 

cd /usr/local/mysql 
mv my.cnf /etc/my.cnf

my.cnf 常用配置

#mysql端口号
port = 3306 

#pid文件存储位置
pid-file =  /data/mysql/mysql.pid

#程序安装目录
basedir =  /usr/local/mysql/

#数据文件存储位置
datadir = /var/local/mysql/data  #数据库目录

#设定默认字符为utf8mb4
character-set-server=utf8mb4   

#日志位置
log-error = /var/lib/mysql/error.log

#开启慢查询日志相关
slow_query_log=on

#慢查询判断标准,默认10秒
long_query_time=2

#慢查询日志路径
slow_query_log_file = /var/log/mysql/slow_query.log  

#记录没有使用索引的sql
log-queries-not-using-indexes = 1 

#默认的存储引擎类型
default_storage_engine=InnoDB

#可以修改InnoDB为独立表空间模式,每个数据库的每个表都会生成一个独立的数据空间
innodb_file_per_table = on 

#缓冲池大小,建议为操作系统内存的70%-80%,需重启服务生效
innodb_buffer_pool_size=4G

#软连接开启状态 1是开启 0是关闭
symbolic-link = 0  

#临时文件路径
tmpdir =  /usr/local/mysql/tmp/

#忽略主机名解析,提高访问速度(注意配置文件中使用主机名将不能解析)
skip_name_resolve = on

#打开时,和max_connections对比,取大数
open_files_limit = 65535

#忽略表单大小写
lower_case_table_names = 1    

8、修改权限

cd /usr/local/mysql 
chown -R root:root ./ 
chown -R mysql:mysql data

9、启动项目

cd /usr/local/mysql/support-files 
#启动
./mysql.server start
#停止
./mysql.server stop

启动报错问题

按提示查看报错文件 一般在data下面 ,有问题直接上网百度即可。日志里面的【error】错误直接复制粘贴到百度看下解决办法,不同环境下可能呈现不同的问题这里就不一一列举了,错误种类千奇百怪啥都有,说下我碰到的问题,启动程序 提示 找不到 pid文件,然后我查看了日志,日志提示InnoDB: mmap(2197815296 bytes) failed;说明服务器无法分配内存,我用的是测试服务器配置很低1核1G的 内存估计不够所以在my.cnf里修改默认innodb_buffer_pool_size=128M 改为 8M 然后就可以正常启动啦。

10、修改管理员密码

cd /usr/local/mysql/bin
./mysqladmin -u root password '你的密码'

11、登录mysql

./bin/mysql -h127.0.0.1 -uroot -p
在输入密码

12、添加远程连接用户

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION; 
flush privileges;

13、设置mysql为服务

a、启动mysql服务获取pid信息

b、ps -ef |grep mysql,通过命令找到pid信息复制(或者直接在my.cnf设置pid文件的位置)

c、在 /usr/lib/systemd/system 目录下创建 mysql.service

d、将下面的信息填入mysql.service中

[Unit] 
Description=‘你的服务信息’ 
After=syslog.target network.target remote-fs.target nss-lookup.target 

[Service] 
Type=forking 
PIDFile=/usr/local/mysql/data/你的pid信息.pid 
ExecStart=/usr/local/mysql/support-files/mysql.service start 
ExecReload=/bin/kill -s HUP $MAINPID 
ExecStop=/bin/kill -s QUIT $MAINPID 
PrivateTmp=false 

[Install] 
WantedBy=multi-user.target

e、刷新配置

systemctl daemon-reload

f、可以启动服务了

#启动服务
systemctl start mysql.service

#关闭服务
systemctl stop mysql.service

#开启开机自启动
systemctl enable mysql.service

#关闭开机自启动
systemctl disable mysql.service

如果报错可以根据提示查看报错信息具体调试

Tip:一般会遇到的错误pid路径写错了,启动路径写错了等等书写错误问题

猜你喜欢

转载自www.cnblogs.com/chenxiaochao/p/13376824.html