Linux中安装Mysql

1、下载Mysql

        地址:https://downloads.mysql.com/archives/community/

        

        可以使用 uname -m 或 cat /proc/version 查看本机 的发行版本

        用 /lib64/libc.so.6 查看glibc版本

        一般linux会自带一个mysql内置服务,需要提前卸载

         查看信息:rpm -qa | grep mariadb

        卸载: rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64

2. 上传压缩包解压

# 将文件解压到installs目录下

tar -xvf mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz -C /opt/installs/

# 给解压的文件夹改名
cd /opt/installs

mysql-8.0.31-linux-glibc2.12-x86_64/ mysql8.0.31

# 在mysql8.0.31中创建data文件夹
mkdir -p mysql8.0.31/data


# 配置环境变量,方便使用mysql命令
vi /etc/profile

# 在最后添加
export MYSQL_HOME=/opt/installs/mysql8.0.31
export PATH=$PATH:$MYSQL_HOME/bin


# 刷新环境变量
source /etc/profile

3. 创建mysql用户和组赋权

# 创建mysql用户,会自动创建一个mysql组
useradd mysql

# 给mysql-8.0.31 文件夹赋权
chown mysql:mysql -R mysql8.0.31/

# 查看
ll

        可以看到mysql-8.0.31从root组的root用户变成了mysql组的mysql用户

4. mysql初始化准备

        修改/etc/my.cnf文件

vi /etc/my.cnf

#在mysqld标签下添加
port=3306
basedir=/opt/installs/mysql8.0.31
datadir=/opt/installs/mysql-8.0.31/data
socket=/tmp/mysql.sock
character_set_server=utf8mb4
explicit_defaults_for_timestamp=true

#在mysqld_safe标签下
log-error=/opt/installs/mysql8.0.31/mariadb.log
pid-file=/opt/installs/mysql8.0.31/mariadb.pid

        执行初始化命令,这里的--user是执行初始化的用户,如果使用别的用户会出现启动失败,下面有参考

# 进入到mysql安装目录的bin目录下

./mysqld --defaults-file=/etc/my.cnf --basedir=/opt/installs/mysql8.0.31 --datadir=/opt/installs/mysql8.0.31/data --user=mysql --initialize

        将mysql服务添加到系统服务中

        

# 添加mysql.service到系统服务中
cp /opt/installs/mysql8.0.31/support-files/mysql.server /etc/init.d/mysql

5. 启动,设置密码

# 启动mysql
service mysql start

        这里如果和我一样报错说没有权限更改xxx.pid文件

        进入mysql安装目录查看data文件夹权限,发现初始化文件属于root用户

        更改文件权限再次启动

# 在mysql安装目录下执行
chown -R mysql:mysql data/

# 打开mysql服务
service mysql start

        进入mysql设置密码和远程连接

# 进入mysql
mysql -u root -p


# 修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;

# 配置root远程连接
use mysql;
# 查看user表可以看到root用户的host是localhost,更改为%就可以实现远程连接
select user,host from user;
# 允许root用户远程连接
update user set host='%' where user='root';

# 刷新
flush privileges;

现在就可以通过navcate或idea等远程工具进行连接啦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值