二进制安装 Mysql5.7.30
1,下载
mirrors.sohu.com
上传到服务器 文件大小629M
yum -y install lrzsz
mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
2,安装依赖包
yum -y install zlib-devel gcc-c++ ncurses ncurses-devel libaio libaio-devel
卸载老的mariadb
rpm -qa | grep mariadb
yum remove mariadb-libs -y
3,安装。创建用户并禁止mysql登录系统,创建数据库目录及授权,解压到,创建软链接,
useradd mysql -s /sbin/nologin -M
mkdir -p /mysql/data #或者mkdir -p /data/mysql/data
chown -R mysql.mysql /mysql/
tar -zvxf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /usr/local/ #解压到这个文件夹下
ln -s mysql-5.7.30-linux-glibc2.12-x86_64 /usr/local/mysql
cd /usr/local/mysql/
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf #可能没有就算了。5.7.30没有
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
初始化:
./bin/mysqld --initialize --basedir=/usr/local/mysql --datadir=/mysql/data/ --user=mysql
#或者,常规方案 [root@localhost mysql]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data/ 参数含义 --initialize-insecure 不使用mysql的密码策略,无临时密码 --user 指定用户 --basedir 指定软件路径 --datadir 指定数据路径 --initialize:对于密码复杂度进行定制,密码过期时间180天,为root@localhost设置临时密码 --initialize-insecure:无密码限制
|
产生密码:
2020-06-30T01:34:42.408518Z 1 [Note] A temporary password is generated for root@localhost: R-Sky(Hpz0)i
编辑 vi /etc/my.cnf
[client] port = 3306 socket = /mysql/mysql.sock
[mysqld] basedir=/usr/local/mysql datadir=/mysql/data/ port = 3306 server_id=1 #log-bin = /mysql/mysql-bin socket = /mysql/mysql.sock sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql_safe] log-error = /mysql/mysql.log pid-file = /mysql/mysql.pid |
4,启动,
/etc/init.d/mysqld start
/etc/init.d/mysqld restart #重启
yum –y install lsof
lsof -i :3306 #查看状态,起来了
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 2069 mysql 20u IPv6 24836 0t0 TCP *:mysql (LISTEN)
5,配置环境变量,立即生效
echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile
6,登入数据库
mysql -p
输入上面随机产生的密码
7,进入数据库修改密码,刷新
mysql> set password='1234567';
mysql> flush privileges;
8,添加mysqld到系统服务,以便通过systemctl进行管理
可以直接使用源码包中提供的服务脚本,找打support-files文件夹下的mysql.server脚本文件,复制到/etc/rc.d/init.d目录下,并改名为mysqld,然后再设置执行权限。 [root@localhost init.d]# cd /usr/local/mysql [root@localhost mysql]# ls bin docs include lib LICENSE man README share support-files [root@kgc1 mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld yes [root@kgc1 mysql]# chmod +x /etc/rc.d/init.d/mysqld 将mysql添加为systemd标准服务,方便以后使用“systemctl”命令进行管理 [root@kgc1 ~]# vi /lib/systemd/system/mysqld.service
重启,开机启动,开启。检查情况 systemctl daemon-reload #重启守护进程 systemctl restart mysqld systemctl status mysqld
systemctl enable mysqld #开机启动 查看开机启动的服务列表:systemctl list-unit-files|grep enabled [root@localhost data]# systemctl list-unit-files|grep enabled | grep mysql mysqld.service enabled
[root@kgc1 ~]# netstat –lnt netstat -lntp | grep mysqld [root@192 ~]# mysql -V mysql Ver 14.14 Distrib 5.7.30, for linux-glibc2.12 (x86_64) using EditLine wrapper 状态 yum -y install lsof [root@localhost mysql]# lsof -i :3306 有mysql服务 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mysqld 2887 mysql 30u IPv6 26027 0t0 TCP *:mysql (LISTEN) [root@localhost mysql]# systemctl stop mysqld 关闭 [root@localhost mysql]# [root@localhost mysql]# lsof -i :3306 没有mysql服务。关闭成功 [root@localhost mysql]# systemctl status mysqld 状态:关闭 鈼?mysqld.service - mysqld Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: inactive (dead) since Wed 2020-07-01 11:17:23 CST; 9s ago [root@localhost mysql]# systemctl start mysqld 启动 [root@localhost mysql]# systemctl status mysqld 状态:活跃,开启成功。 鈼?[0m mysqld.service - mysqld Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2020-07-01 11:18:37 CST; 2s ago
|
完成。