一、下载mysql5.7安装包
下载地址:https://dev.mysql.com/downloads/mysql/5.7.html
二、mysql5.7安装包上传到linux服务器
linux服务器根目录下新建文件夹:
1)、 tool文件夹,存放软件安装包
2)、 xz文件夹,存放安装后的软件
将下载好的mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz上传至tool文件夹下:
三、检查系统是否安装过mysql
检查系统是否安装过mysql,如果没有略过此步骤:如下图:
//检查系统中有无安装过mysql
[root@localhost tool]# rpm -qa|grep mysql
如果系统自带mysql,查询所有mysql 对应的文件夹,全部删除
whereis mysql
find / -name mysql
四、卸载CentOS7系统自带mariadb
查看系统自带的Mariadb
rpm -qa|grep mariadb
卸载系统自带的Mariadb
rpm -e --nodeps mariadb-libs-5.5.60-1.el7-5.x86_64
删除etc目录下的my.cnf ,一定要删掉,等下再重新建,之前我将就用这个文件,后面改配置各种不生效,因为lz此目录下没有my.cnf文件,没有执行可命令
rm /etc/my.cnf
以上命令截图如下:
五、检查有无安装过mysql 用户组,没有的话创建
检查mysql 用户组是否存在
cat /etc/group | grep mysql
cat /etc/passwd |grep mysql
创建mysql 用户组和用户
groupadd mysql
useradd -r -g mysql mysql
六、安装mysql5.7步骤
解压安装mysql安装包到/xz/目录下
tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz -C /xz/
修改mysql-5.7.36-linux-glibc2.12-x86_64名称为mysql5.7
mv mysql-5.7.36-linux-glibc2.12-x86_64/ mysql5.7
更改mysql5.7 目录下所有文件夹所属的用户组、用户以及权限
chown -R mysql:mysql /xz/mysql5.7
chmod -R 755 /xz/mysql5.7
进入/xz/mysql5.7/bin/目录,编译安装并初始化mysql。
务必记住数据库管理员临时密码,如下图画红色框的部分。
./mysqld --initialize --user=mysql --datadir=/xz/mysql5.7/data --basedir=/xz/mysql5.7
编写etc目录下的my.cnf 配置文件,并添加配置
//进入配置文件
vi /etc/my.cnf
//在插入模式下编写,完成后保存,当然这个可以自己添加
[client]
default-character-set=utf8
[mysql]
#解决客户端乱码问题
default-character-set=utf8
[mysqld]
#解决服务端乱码问题
character-set-server=utf8
# 安装目录
basedir=/xz/mysql5.7
# 数据存放目录
datadir=/xz/mysql5.7/data
#日志及进程数据的存放目录
log-error=/xz/mysql5.7/data/mysqld.log
pid-file=/xz/mysql5.7/data/mysqld.pid
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=400
innodb_file_per_table=1
#表名大小写不明感,敏感为1
lower_case_table_names=1
关于/var/run/mysqld丢失的原因
先/var/run/下有mysqld目录,并赋予mysql属主/组权限,否则依然无法启动。完成后重新启动mysqld,这时启动成功。
相关经验表明这是mysql5.7的一个BUG,当你停止mysql服务时,/ var/run/mysqld会被删除,且/var/run/mysqld 目录每次重启后都需要手动去创建,是因为/var/run/目录下建立文件夹是在内存中,故每次重启后内存被清空导致/var/run/mysqld 也被清除,从而导致无法启动mysql。可尝试:
将pid-file=/var/run/mysqld/mysqld.pid修改为 pid-file=/var/lib/mysqld/mysqld.pid
授予my.cnf 配置文件775权限,如下:
chmod -R 775 /etc/my.cnf
修改/xz/mysql5.7/support-files/目录下的mysql.server文件,如下图中5个位置的/usr/local/mysql全部修改成/xz/mysql5.7。
因为lz没有安装下/usr/local/mysq目录下,所以需要修改成lz安装的/xz/mysql5.7目录。
启动mysql 服务器
1)、查询服务
ps -ef|grep mysql
ps -ef|grep mysqld
2)、启动服务
/xz/mysql5.7/support-files/mysql.server start
添加软连接,并重启mysql 服务
//添加软连接
ln -s /xz/mysql5.7/support-files/mysql.server /etc/init.d/mysql
ln -s /xz/mysql5.7/bin/mysql /usr/bin/mysql
//重启mysql服务
service mysql restart
登录mysql ,密码就是初始化时生成的临时密码
mysql -u root -p
修改密码为root
set password for root@localhost = password('root');
开放远程连接
use mysql;
update user set user.Host='%' where user.User='root';
flush privileges;
设置开机自启
//将服务文件拷贝到init.d下,并重命名为mysql
cp /xz/mysql5.7/support-files/mysql.server /etc/init.d/mysqld
//赋予可执行权限
chmod +x /etc/init.d/mysqld
//添加服务
chkconfig --add mysqld
//显示服务列表
chkconfig --list
开放3306端口,测试本地客户端是否连接成功
//开放3306端口命令
firewall-cmd --zone=public --add-port=3306/tcp --permanent
//配置立即生效
firewall-cmd --reload
至此,centos7安装mysql5.7完成,本客户端连接centos7中的mysql5.7服务端成功。
ERROR 1366 (HY000): Incorrect string value: ‘\xE5\x93\x88\xE5\x93\x88’ for column
字符集的编码问题,
解决1:通过命令方式(临时的)
mysql> show variables like 'character%';
+--------------------------+-----------------------------------+
| Variable_name | Value |
+--------------------------+-----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /opt/mysql-5.7.30/share/charsets/ |
+--------------------------+-----------------------------------+
set character_set_database=utf8;
set character_set_server=utf8;
mysql> show variables like 'character%';
解决2:修改配置文件my.cnf
[client]
default-character-set=utf8
[mysql]
#解决客户端乱码问题
default-character-set=utf8
[mysqld]
#解决服务端乱码问题
character-set-server=utf8
停掉mysql:service mysqld stop
启动mysql:service mysqld start
原文链接:https://blog.youkuaiyun.com/li1325169021/article/details/121515102