Linux下安装Mysql
作者 | java星星。
来源 | 今日头条
1.首先下载mysql压缩包
MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发后来被Oracle收购为旗下产品。由于他的特点是体积小、速度快、总体拥有成本低,一般中小型网站的开发者都常常选择 MySQL 作为网站数据库,免费开源嘛大家都懂的。。。下面就是介绍mysql从下载到安装的全过程。。。
2.解压缩mysql压缩包
执行指令 tar -zxvf
mysql-5.7.26-linux-glibc2.12-x86_64.tar
3.再移动并重命名mysql文件夹
3.1 执行指令 mv
mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql
3.2 进入移动后的local目录下 通过cd /usr/local
3.3 然后再通过指令 ll 查看local下的文件,此时会发现mysql文件夹为蓝色不可执行的状态
3.4 创建mysql用户组和用户并修改权限
3.4.1 创建mysql用户组执行指令 groupadd mysql
3.4.2 添加用户并修改权限执行指令 useradd -r -g mysql mysql
3.5 创建数据目录并赋予权限
3.5.1 创建目录执行指令 mkdir -p /data/mysql
3.5.2 赋予权限执行指令 chown mysql:mysql -R /data/mysql
此时可以通过ll指令进行查看,总数目为0
3.6 配置my.cnf
通过执行指令 vim /etc/my.cnf 进入my.cnf文件中进行修改
3.7 进入insert模式,将下面信息粘贴进去
[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
explicit_defaults_for_timestamp=true
完成后,通过:wq进行保存退出,其中basedir和datadir的地址一定要写对。
3.8 初始化数据库
3.8.1 首先进入bin目录,执行指令 cd /usr/local/mysql/bin/
3.8.2 进行mysql的初始化执行指令 ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
完成初始化后会随机生成一个随机的密码,后面必须进行重置才能正常使用。
3.9 启动mysql
3.9.1 先将mysql.server放置到/etc/init.d/mysql中,执行指令 cp
/usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
3.9.2 启动mysql服务并查看
3.9.2.1 启动mysql服务执行指令是service mysql start
3.9.2.2 查看mysql是否启动 ps -ef|grep mysql 此时mysql就已经启动成功了。
3.10 重置root 密码
3.10.1 首先登录mysql,密码使用前面初始化的时候随机生成的password,在bin目录下执行指令 ./mysql -u root -p
3.10.2 此时便已经登录成功,开始重置密码,需要依次执行下面三个步骤的操作,然后再重新登录
SET PASSWORD = PASSWORD('需要修改的密码');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
3.10.3 然后执行下面三个指令使root能在任何host访问,
3.10.3.1 访问mysql库执行指令 use mysql
3.10.3.2 使root能在任何host访问执行指令 update user set host = '%' where user = 'root';
3.10.3.3 刷新权限 FLUSH PRIVILEGES;
3.10.4 如果不希望每次都到bin目录下使用mysql命令则执行以下命令 ln -s
/usr/local/mysql/bin/mysql /usr/bin
注:如果安装权限不够 可以使用 sudo 指令的来进行执行,比如 sudo vim XXX或者 sudo ls之类的