Linux下安装Mysql

本文详细介绍了在Linux系统中安装MySQL的过程,包括下载MySQL压缩包、解压、移动文件夹、创建用户组和用户、配置my.cnf、初始化数据库、启动服务以及重置root密码的步骤。

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之类的

LINUX重启MYSQL的命令 . 分类: Linux 2010-06-25 10:21 6367人阅读 评论(0) 收藏 举报 如何启动/停止/重启MySQL 一、启动方式 1、使用 service 启动:service mysqld start 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld start 3、使用 safe_mysqld 启动:safe_mysqld& 二、停止 1、使用 service 启动:service mysqld stop 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld stop 3、 mysqladmin shutdown 三、重启 1、使用 service 启动:service mysqld restart 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld restart 提问 编辑摘要 如何启动/停止/重启MySQL 一、启动方式 1、使用 service 启动:service mysqld start 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld start 3、使用 safe_mysqld 启动:safe_mysqld& 二、停止 1、使用 service 启动:service mysqld stop 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld stop 3、 mysqladmin shutdown 三、重启 1、使用 service 启动:service mysqld restart 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld restart 刚开始学 mysql时都是用redhat自带的。启动是什么 /rc.d/init.d/ start 这很简单,但是后来越学越多,系统自带的 mysql,有的是版本太低,有的是与 自己想要装的web服务需要的低版本的mysql 后来自己学着以tar的方式安装 mysql,我的mysql装在/usr/local/mysql目录下启 动碰到过很多问题。最常见的是: ERROR 2002: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111) 解决办法: [root@test mysql]# /usr/local/mysql/bin/mysqladmin -u root / > -S /var/lib/mysql/mysql.sock password 'your.passwd' 或者做个连接 ln -s /var/lib/mysql/mysql.sock /tmp 其实提示找不到 /tmp/mysql.sock有时也并不是/tmp目录下没这个文件,是启动 命令不对,我碰到过 常见的几种启动方式,自己也不是记得很清楚,如果你确定tmp下有mysql.sock这 个文件不妨试试另外的几个命令 /usr/local/mysql/bin/mysql -u root -p /usr/local/mysql/bin/mysqld --user=mysql& /usr/local/mysql/bin/mysqld --user=root& /usr/local/mysql/bin/mysqld_safe --user=root& /usr/local/mysql/bin/mysqld_safe --user=mysql& /usr/local/mysql/bin/safe_mysqld--uer=root&(注意 safe_mysqld与mysqld_safe是不同的,&表示mysql在后台运行)我的就会报错了 STOPPING server from pid file /usr/local/mysql/data/localhost.localdomain.pid 060304 11:46:21 mysqld ended 这是权限问题,我的mysql目录属于root用户,也属于root群组,改用 mysqld_safe启动就没问题了, 大家只要注意这几个 mysql,safe_mysqld,mysqld_safe,mysqld,mysqladmin.多试 几次 其实有时mysql已经正常启动了,查看mysql是否启动命令 ps -aux | grep mysqld 会看到如下类似内容 mysql 6394 0.0 1.5 10528 992 pts/3 S 16:16 0:00 /usr/local/mysql/ mysql 6395 0.0 1.5 10528 992 pts/3 S 16:16 0:00 /usr/local/mysql/ mysql 6396 0.0 1.5 10528 992 pts/3 S 16:16 0:00 /usr/local/mysql/ root 6422 0.0 1.1 2408 732 pts/3 S 16:20 0:00 grep mysql 查看mysql是否在监听端口命令 netstat -tl | grep mysql 会看到如下类似内容 tcp 0 0 *:mysql *:* LISTEN
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值