使用Amazon Web Services(AWS)云,基于Linux部署MYSQL

数据库是服务器的标配了,总结下如何在AWS EC2 linux服务器中部署MYSQL(方法有很多,这只是其中比较顺手的一种-.-)。

1.SSH远程登录你的Linux服务器,具体方法在我的上一篇BLOG中有详细介绍。

2.安装MYSQL

使用yum命令安装:

sudo yum install mysql
sudo yum install mysql-server
sudo yum install mysql-devel

安装完毕后,mysql 数据库路径在/var/lib/mysql ,配置文件路径为/etc/my.cnf

/var/lib/mysql的用户群改成MYSQL,并赋予属主和属组权限:

sudo chgrp -R mysql /var/lib/mysql
chmod -R 770 /var/lib/mysql

至此可以启动MYSQL服务了:

sudo service mysqld start

设置你的mysql root密码:

/usr/bin/mysqladmin -u root password '你的密码'

最后别忘了到EC2 CONSLE页面的Security Groups中配置开放3306端口,否则会被AWS墙了!

3.设置mysql编码

使用MYSQL前配置编码很重要,设置正确的编码,否则很多数据操作会遇到各种乱七八糟的问题。

先查看当前数据库编码状态:进入MYSQL

SHOW VARIABLES LIKE 'character_set_%';

由于没有进行过设置,编码配置为默认的:

+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

把latin1改成UTF8,需要修改/etc/my.cnf

sudo nano /etc/my.cnf

找到[mysqld] 标签,加入:

character_set_server=utf8

ctrl+x保存退出,重新启动mysql服务,编码就修改成功了!

mysql> SHOW VARIABLES LIKE 'character_set_%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

4.创建新用户,并授予远程登录权限

如果我们要使用例如NAVICAT的图形化管理软件远程登录mysql或需要远程登录mysql操作,需要对用户授予远程登录权限

在root下创建一个新mysql用户:

 insert into mysql.user(Host,User,Password) values("%","test",password("1234"));
 grant select,delete,update,create,drop on *.* to test@"%" identified by "1234";

flush privileges;

这样就创建了一个名为test,密码为1234,可以在任意地点登录的用户。

其中Host='%'意为可以在任意IP登录,如果需要指定可登陆IP,将‘%’替换为指定登录的IP就行了。

enjoy!!

原文地址:https://www.cnblogs.com/funyuto/p/3098802.html