文章目录
- 一、安装前准备:
- 二、解压压缩包
- 三、创建linux用来运行mysql的用户,并授权
- 四、编写mysql运行的配置文件
- 五、初始化mysql
- 六、查看初始化密码
- 七、使用service方式启动mysql
- 八、登录mysql
- 其他
- ./mysqld命令执行过程解析
- mysql.server服务的拷贝
- msyql修改密码-忘记密码
- 参考文档
一、安装前准备:
- 系统版本:centos7.0
- mysql版本:5.7
- 压缩包:mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
- 点击跳转压缩包下载地址,如果失败则复制下载地址使用迅雷下载
二、解压压缩包
- 把压缩包放在/usr/mysql目录下
mkdir /usr/mysql
cd /usr/mysql
tar -zxvf mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.19-linux-glibc2.12-x86_64 mysql-5.7.19
三、创建linux用来运行mysql的用户,并授权
groupadd mysql
useradd -r -g mysql mysql
chown mysql:mysql -R /usr/mysql
四、编写mysql运行的配置文件
- 若存在,先备份
vim /etc/my.cnf
#备份的命令
mv /etc/my.cnf /etc/my.cnf.bak
[mysqld]
server-id=1
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/mysql/mysql-5.7.19
datadir=/usr/mysql/mysql-5.7.19/data
socket=/tmp/mysql.sock
log-error=/usr/mysql/mysql-5.7.19/mysql.err
pid-file=/usr/mysql/mysql-5.7.19/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
#log-bin=/data/mysql/mysql-bin
#skip-grant-tables
五、初始化mysql
mkdir /usr/mysql/mysql-5.7.19/data/
cd /usr/mysql/mysql-5.7.19/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/mysql/mysql-5.7.19 --datadir=/usr/mysql/mysql-5.7.19/data/ --user=mysql --initialize
- 如果脚本报错
./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
- 解决方式
yum install -y libaio
六、查看初始化密码
- 并且复制下来,作为后面使用,这个初始化密码是通过上面的mysqld初始化生成的,如果上面的再调用一次,这个会变
cat /usr/mysql/mysql-5.7.19/mysql.err
七、使用service方式启动mysql
cp /usr/mysql/mysql-5.7.19/support-files/mysql.server /etc/init.d/mysqld
service mysqld start
systemctl start mysqld
- linux 上设置mysql开机自启
八、登录mysql
- 软连接,把mysql的命令变成系统下的命令
ln -s /usr/mysql/mysql-5.7.19/bin/mysql /usr/bin
- 登录,密码输入初始化密码,上面保存的
mysql -u root -p
- mysql -u root -p 启动时报错:error while loading shared libraries: libncurses.so.5: cannot open shared object file
- 更改密码方式一,修改当前登录用户的密码,这种不用刷新权限
SET PASSWORD = PASSWORD('1111');
- 更改密码方式二,需要刷新权限
use mysql
update user set authentication_string=password("1111") where user="root";
- 更改账号使用的ip范围,%表示全部ip都能使用该账号
update user set host = '%' where user = 'root';
- 授权
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";
- 查询账号密码
select host, user from user;
- 刷新权限
flush privileges;
其他
./mysqld命令执行过程解析
- 命令为
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/mysql/mysql-5.7.18 --datadir=/usr/mysql/mysql-5.7.19/data/ --user=mysql --initialize
–defaults-file:指定该命令运行的配置文件
–basedir:mysql安装的根目录,即使错了对命令也没影响
–datadir:初始化数据存储的目录,需要和配置文件相同,不然会启动失败
–user:指定运行用户
–initialize:初始化数据
mysql.server服务的拷贝
- 原命令为
cp /usr/mysql/mysql-5.7.19/support-files/mysql.server /etc/init.d/mysqld
- 这个文件不会受./mysqld命令的影响,默认读取的配置文件路径为/etc/my.cnf
msyql修改密码-忘记密码
- msyql修改密码-忘记密码
参考文档
- linux环境上使用压缩包安装mysql