开源是一种精神,分享是一种美德!

centos7部署二进制包mysql8

数据库 W•X 343℃

https://www.freebuf.com/articles/database/36777.html //mysql安全配置
https://www.cnblogs.com/ya-qiang/p/9094008.html //报错解决
————-
Centos7部署Mysql8

一、安装前的准备
1. 下载mysql数据库
# cd /usr/local/src/
# wget https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-8.0/mysql-8.0.17-linux-glibc2.12-x86_64.tar.xz
2.在安装前需要确定现在这个系统有没有 mysql,如果有那么必须卸载。
(1)查看mysql数据库
rpm -qa | grep -i mysql
(2)卸载mysql数据库
rpm -e –nodeps mysql 文件名
3.解压缩mysql文件
(1)xz –d /mysql-8.0.17-linux-glibc2.12-x86_64.tar.xz
(2)tar –xvf /usr/local/mysql-8.0.17-linux-glibc2.12-x86_64.tar
(3)mv /usr/local/mysql-8.0.16-linux-glibc2.12-x86_64 /usr/local/mysql
二、添加mysql组和用户及权限分配
1.检查mysql组和用户是否存在,如无创建
cat /etc/group | grep mysql
cat /etc/passwd | grep mysql
2.创建mysql用户组,指定mysql用户属于mysql组
groupadd mysql
useradd -g mysql mysql
3.给予安装目录mysql权限
chown -R mysql:mysql /usr/local/mysql
三、创建和设置配置文件my.cnf
1.在/etc/下创建创建my.cnf
# vim /etc/my.cnf 写入以下内容
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
skip-name-resolve
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M
四、初始化数据库(会生成默认密码),创建完data目录,最后记得把生成data目录赋予mysql用户
# /usr/local/mysql/bin/mysqld –initialize
# chown -R mysql:mysql /usr/local/mysql/data
# chmod 755 /usr/local/mysql/data
五、设置开机服务
1.创建软连接(实现可直接命令行执行mysql)
ln -s /usr/local/mysql/bin/mysql /usr/bin
2.mysqld配置,拷贝启动文件到/etc/init.d/目录下并重命令为mysqld
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
3.如果没有就添加mysqld
chkconfig –add mysqld
4.设置开机启动
chkconfig mysqld on
5.启动测试
service mysqld start
六、问题解决
1.如果无法启动,且提示pid错误;首先一定要确认配置文件有没有打错字母,改正后,删除data目录
rm -rf /usr/local/mysql/data
2.重新初始化一遍
/usr/local/mysql/bin/mysqld –initialize
3.记下密码后,追加755权限给data目录
chmod 755 /usr/local/mysql/data
4.再重新启动mysql服务
service mysqld start
七、登录mysql修改密码
1.登录mysql,前面最新的密码就派上用场了
mysql -uroot -p生成的密码
2.修改密码
mysql>set password=’123456′;
mysql>flush privileges;
mysql>alter user ‘root’@’localhost’ identified by ‘FwaX63cSCWq’;
3.授权MySql远程访问;
mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’WITH GRANT OPTION;
改表法远程连接mysql
mysql>use mysql
mysql>update user set host=’%’ where user = ‘root’;
mysql>flush privileges;
八、navicat连接数据库报错
1. 查看数据库用户信息
mysql>select host,user,plugin,authentication_string from mysql.user;
备注:host为 % 表示不限制ip localhost表示本机使用 plugin非mysql_native_password 则需要修改密码
2.修改用户密码
(1).如果想要设置远程这样设置:
mysql>ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘newpassword’; #更新一下用户的密码
(2).如果要设置本地plugin为mysql_native_password这样设置:
mysql>ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘newpassword’; #更新一下用户的密码 root用户密码为newpassword
mysql>flush privileges;

 

转载请注明:LINUX! » centos7部署二进制包mysql8

喜欢 (0)