阿里云linux安装及使用mysql

环境centos7.0
1,首先查看自己是否安装过mysql

rpm -qa | grep mysql

如果什么都不显示即表示未使用rmp安装mysql
但是不一定表示没有mysql,再查看一下mysql的状态,如果有mysql的话,会显示mysql和它的状态

service mysql status

在这里插入图片描述
也可以使用命令查看mysql的进程

ps -aux | grep mysql

在这里插入图片描述
查看服务和查看mysql有显示的mysql内容就表示已经安装

2,下载mysql
推荐先进入根目录下的home文件夹在里面创建一个mysql文件夹。方便操作和记录。(创建文件夹命令为mkdir mysql

 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

下图表示正在下载
在这里插入图片描述
使用wget命令从指定的URL下载文件,会将后面的内容下载到所在的位置,比如你在home中,就会下载到home下面。这样就可以省去下载到自己电脑上再使用ftp传到服务器上的步骤。
这里下载的是mysql5.7版本
3,解压和移动

tar xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

这样就会在你所在的位置解压出一个文件夹,使用ls命令就可以查看你所在的文件夹中所包含的内容
之后我们将这个解压出来的文件夹移动到/usr/local/下并改名为mysql(这个时候我们的位置需要不能动即在/home/mysql下)mv命令是可以移动文件以及为文件改名。注意:移动文件时目标位置必须没有与移动文件相同名字的文件,即在/usr/local/下没有mysql

mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql

这个时候解压后的文件就在/usr/local/下并且改名为mysql
4,创建data目录,并赋予其他文件相应权限
在mysql中创建data文件夹

mkdir /usr/local/mysql/data

更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及赋予相应的权限

useradd mysql
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql

5,进入mysql中进行编译安装(就像在windows安装exe文件)
首先进入MySQL中的bin目录

cd /usr/local/mysql/bin

进行编译和安装

./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

成功后会在最后显示默认密码这个需要记住
在这里插入图片描述
6,修改配置文件

vim /etc/my.cnf

并且添加如下配置

[mysqld]
datadir=/usr/local/mysql/data
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=400
innodb_file_per_table=1

默认表名大小写不明显,如果想要修改为明显需要添加如下一行

lower_case_table_names=1

之后进行启动mysql

/usr/local/mysql/support-files/mysql.server start

在mysql后面显示【ok】表示启动成功

7,添加软链接

ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

就像windows中的快捷方式,可以在任意位置启动这个服务。而不是需要进入mysql对应的bin中启动
使用快捷方式重启mysql

service mysql restart

8,进入mysql中,修改密码并开启远程

mysql -u root -p

之后会让你输入密码需要输入之前编译安装后出现的密码。注意:输入时没有任何显示,不要认为是没输入进去。只是它不显示然后我们修改密码,yourpass是你需要设置的密码。用来以后在服务器上登录mysql数据库

set password for root@localhost = password('yourpass');

进入后我们使用mysql数据库

use mysql;

之后开放权限(这里功能有很多,可以指定ip连接数据库,并且还可以赋予指定的账号密码连接,也就是不同的ip可以用不同的账号密码,并且还可以赋予不同的权限就像增删改查)想要了解更多可以查询MySQL中的grant命令。
下面的命令是让所有的ip都可以访问,并且用户为root,密码也就是和刚才设置的登录数据库的密码一样

update user set user.Host='%' where user.User='root';

之后需要刷新权限,要不然进行的操作只是保存了并没有执行

flush privileges;

之后我们退出mysql命令行

exit;

9,开放防火墙
这个时候我们想要远程操作还需要打开服务器对应mysql数据库的3306端口别的电脑才能通过这个端口进入mysql数据库
查看firewall防火墙的状态(不同的linux防火墙可能不同,也会有iptables防火墙)

systemctl status firewalld

下图表示防火墙没有开。可以使用systemctl start firewalld开启防火墙,开启后进行配置下面的内容。不开启的话就不用配置下面的内容
这种代表

查看3306端口是否开放

firewall-cmd --query-port=3306/tcp

如果没开放就开放3306端口

firewall-cmd --permanent --add-port=3306/tcp

注意这个也和mysql刷新权限一样,修改规则后需要重启才能生效,重启防火墙

firewall-cmd --reload

10,如果是阿里云的话,需要去控制台打开防火墙中的3306端口
下图是阿里云轻量型服务器打开3306端口
在这里插入图片描述
下图是阿里云ECS服务器打开3306端口
在这里插入图片描述

原创文章 5 获赞 12 访问量 1610

猜你喜欢

转载自blog.csdn.net/sonwing/article/details/106090128