linux下安装mysql

下载mysql

下载地址 https://dev.mysql.com/downloads/mysql/5.7.html

检查删除mariaDB

yum list installed | grep mariadb #检查是否存在mariaDB
yum -y remove mariadb-libs.x86_64 #移除

安装mysql

## 解压
tar -zxvf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz 
## 移动到/usr/local/mysql下
mv mysql-5.7.34-linux-glibc2.12-x86_64 /usr/local/mysql
## 创建mysql用户组和用户
groupadd mysql
useradd -r -g mysql mysql
## 创建mysql数据目录并赋予权限
mkdir -p  /data/mysql              #创建mysql数据目录
chown mysql:mysql -R /data/mysql   #赋予权限;将/data/mysql下的所有文件与子目录的拥有者皆设为 mysql ,群体的使用者 mysql :


配置my.cnf

vim /etc/my.cnf

写入

[mysqld]
bind-address = 0.0.0.0
port = 3306
user = mysql
basedir = /usr/local/mysql
datadir = /data/mysql
socket = /tmp/mysql.sock
log-error = /data/mysql/mysql.err
pid-file = /data/mysql/mysql.pid
#character config
character_set_server = utf8mb4
symbolic-links = 0
##授予my.cnf最大权限
chown 777 /etc/my.cnf
  1. 初始化数据库

进入mysql的bin目录,注意别进错了目录

## 初始化数据库
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
### 查看密码
cat /data/mysql/mysql.err

初始化数据库时可能会报错:User
error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

解决:执行 sudo yum install libaio

  1. 启动mysql
### 复制 mysql.server 到 /etc/init.d 下
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
## 启动mysql
service mysql start

启动成功提示 Starting MySQL. SUCCESS!

  1. 将mysql的bin目录加入PATH环境变量,编辑 ~/.bash_profile文件
vim ~/.bash_profile

添加 PATH=$PATH:/usr/local/mysql/bin

source ~/.bash_profile

mysql 配置

  1. 修改密码
## 用生成的随机密码登录,进行修改密码
./mysql -u root -p   #bin目录下

输入随机生成的密码连接mysql之后 执行下面操作

SET PASSWORD = PASSWORD ('root');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
  1. 修改root 账号的访问权限
use mysql; #选择访问mysql库
update user set host = '%' where user = 'root'; #使root能再任何host访问
FLUSH PRIVILEGES; #刷新
  1. 创建用户已经授权
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
## 授权
### 权限选择 SELECT,INSERT,UPDATE,ALL...  
### databasename.tablename 可以使用通配符 *.*
GRANT ALL ON databasename.tablename TO 'username'@'host';
posted @ 2023-12-27 11:10  yuing_cc  阅读(103)  评论(0)    收藏  举报