1、先检查要安装的Linux服务器cglib版本号,命令 strings /lib64/libc.so.6 | grep GLIBC ,查看其是否有相应cglib版本
2、cd /usr/local 下载MySQL5.7
老版本:https://downloads.mysql.com/archives/community/
国内镜像:http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/
3、解压压缩包:tar -xzvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
并且重命名:mv mysql-5.7.23-linux-glibc2.12-x86_64 mysql
4、创建用户组
groupadd mysql
useradd -r -g mysql mysql
5、进入到mysql目录下创建数据目录并赋予权限
创建目录
mkdir data
赋予权限
chown mysql:mysql -R /usr/local/mysql
6、配置my.cnf
vi /etc/my.cnf
datadir改为自己创建的data路径 basedir改为自己安装的mysql路径
[mysqld]
bind-address=0.0.0.0
port=3306
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/usr/local/mysql/mysql.sock
symbolic-links=0
lower_case_table_names=1
character_set_server=utf8mb4
explicit_defaults_for_timestamp=true
[mysqld_safe]
log-error=/var/log/mysql/mysqld.log
pid-file=/var/log/mysql/mysqld.pid
创建上述配置中的log目录和pid目录 并赋予权限
mkdir /var/log/mysql
mkdir /var/run/mysql
touch /var/log/mysql/mysqld.log
touch /var/log/mysql/mysqld.pid
chown -R mysql:mysql /var/log/mysql/
7、初始化数据库
进入到mysql的bin目录下
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --user=mysql --initialize
目录一定要正确,否则启动不成功
看到最后一行是临时密码:-wPJi*<fz4zX
2021-03-31T15:24:39.285206Z 1 [Note] A temporary password is generated for root@localhost: 7Hjj3+bhpu/v
PS:如果初始化报错error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
就安装:yum install libaio-devel.x86_64
8、启动数据库
把mysql放到本地系统服务中
cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
启动mysql
service mysql start # 启动命令
service mysql status # 查看状态
service mysql stop # 停止命令
9、设置环境变量 开机自启 远程连接
修改配置
vi /etc/profile
在最后一行增加如下配置
export PATH=$PATH:/usr/local/mysql/bin
开机自启
chmod +x /etc/init.d/mysql
chkconfig --add mysql
查看开启
chkconfig --list
如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入
chkconfig --level 345 mysqld on
10、 查看初始密码 并更改密码
mysql -u root -h 127.0.0.1 -p
输入密码
进入MySQL,更改密码
SET PASSWORD FOR 'root'@localhost=PASSWORD('XXXXXXXXXXXXXX');
11、开启远程登陆
远程连接设置
登录mysql mysql -u -p
use mysql;
然后查看user表
select user,host from user;
开启远程
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.5.%' IDENTIFIED BY 'XXXpasswordXXX' WITH GRANT OPTION;
%代表所有,也可以写IP,后面是密码,可以和root密码不同
再次查看use mysql,如果root没有%可以使用
update user set host = '%' where user = 'root';
开启远程权限
flush privileges; # 重载系统权限
exit; # 退出
主要摘自:https://www.icode9.com/content-2-898758.html,一处地方是错的,MySQL开启不了,也有其他地方的
虚拟机测试,本地连接已成功,阿里云应该还要开端口,回头部署……
出现
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
进入bin目录执行
$ ./mysqld_safe --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data &