linux 安装 mysql 5.6.43

前记:

去年双12买了一台百度云的服务器,用来自己学习用的,一直没部署,趁现在不是那么忙,慢慢把需要的服务搭建起来。以供以后参考

 环境:
1、操作系统:CentOS / 7.5 x86_64 (64bit) (百度云)
2、安装版本: mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz
3、下载地址:http://dev.mysql.com/downloads/mysql/

 

安装步骤

1、卸载老版本MySQL

 查找并删除mysql有关的文件

find / -name mysql 
rm -rf 上边查找到的路径,多个路径用空格隔开 #或者下边一条命令即可 find / -name mysql|xargs rm -rf

 

2、在安装包存放目录下执行命令解压文件:

 解压安装包

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

 修改名称为mysql

mv mysql-5.6.43-linux-glibc2.12-x86_64 /home/mysql/mysql

 

3、先检查是否有mysql用户组和mysql用户

先检查是否有mysql用户组和mysql用户

groups mysql

 若无,则添加;

groupadd mysql

useradd -r -g mysql mysql

若有,则跳过

4、进入mysql目录更改权限

进入mysql 目录 并修改权限

cd /home/mysql/mysql

chown -R mysql:mysql ./

 

 

 5、执行安装脚本

 在mysql目录执行安装脚本

./scripts/mysql_install_db --user=mysql --basedir=/home/mysql/mysql --datadir=/home/mysql/mysql/data

安装完之后修改当前目录拥有者为root用户,修改data目录拥有者为mysql

chown -R root:root ./ 

chown -R mysql:mysql data

6、更改mysql密码

一步安装脚本执行输出的日志中告诉我们如何更改密码了

但是如果直接执行这两条命令就会报错

因为这时还没有启动mysql,这算是一个坑。启动方法如下:

./support-files/mysql.server start

启动也有可能会报错

因为文件不一定存在,就去/var/log目录下创建相应目录和文件并修改权限

cd /var/log

mkdir /var/log/mariadb

touch /var/log/mariadb/mariadb.log

chown -R mysql:mysql /var/log/mariadb

接着返回mysql 目录,并启动mysql 服务

MySQL启动之后再执行如下命令更改密码:

./bin/mysqladmin -u root -h localhost.localdomain password 'root'

密码更改后即可登录MySQL

./bin/mysql -h127.0.0.1 -uroot -proot

登录之后将其他用户的密码也可改为root

update mysql.user set password=password('root') where user='root'; 

flush privileges;

 7、增加远程登录权限

上一步即可本地登录,但远程登录会报错

为解决这一问题,需要本地登陆MySQL后执行如下命令

grant all privileges on *.* to root@'%' identified by 'root'; 

flush privileges;

执行之后即可远程登录

8、将MySQL加入Service系统服务

cp support-files/mysql.server /etc/init.d/mysql 

chkconfig --add mysql

chkconfig mysql on 

service mysql restart  

service mysql status

9、配置my.cnf

编辑my.cnf ,添加一下三条命令

vim my.cnf #添加以下两条语句并保存退出 
#指定数据库的编码
character_set_server=utf8
 
#lower_case_table_names: 此参数不可以动态修改,必须重启数据库
#lower_case_table_names = 1  表名存储在磁盘是小写的,但是比较的时候是不区分大小写
#lower_case_table_names=0  表名存储为给定的大小和比较是区分大小写的 
#lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候是小写的
lower_case_table_names=1 

#MySQL会根据配置文件会限制server接受的数据包的大小。如果写入大数据时,因为默认的配置太小,插入和更新操作会因为 max_allowed_packet 参数限制,而导致失败。
max_allowed_packet=100M

 配置好之后,重启mysqld服务

 参考文章:https://www.cnblogs.com/wangdaijun/p/6132632.html

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值