参照了一下这篇文章。
http://www.codingyun.com/article/38.html
一. 获取mysql
直接从阿里云内部的软件中心下载
wget http://oss.aliyuncs.com/aliyunecs/onekey/mysql/mysql-5.5.35-linux2.6-x86_64.tar.gz
解压到本地目录
tar zxvf mysql-5.5.35-linux2.6-x86_64.tar.gz -C /home/server/
进入解压目录下,更改文件夹名称
cd /home/server mv mysql-5.5.35-linux2.6-x86_64 mysql
二.更改配置信息
为mysql添加群组和用户
groupadd mysql
useradd -g mysql -s /sbin/nologin mysql
执行安装脚本
/home/server/mysql/scripts/mysql_install_db --datadir=/home/server/mysql/data/ --basedir=/home/server/mysql --user=mysql
为mysql用户添加文件夹读写权限
chown -R mysql:mysql /home/server/mysql/ chown -R mysql:mysql /home/server/mysql/data/ chown -R mysql:mysql /home/log/mysql
添加配置文件
cp -f /home/server/mysql/support-files/mysql.server /etc/init.d/mysql sed -i 's#^basedir=$#basedir=/home/server/mysql#' /etc/init.d/mysql sed -i 's#^datadir=$#datadir=/home/server/mysql/data#' /etc/init.d/mysql cp -f /home/server/mysql/support-files/my-small.cnf /etc/my.cnf sed -i 's#skip-locking#skip-external-locking log-error=/home/log/mysql/error.log#' /etc/my.cnf chmod 755 /etc/init.d/mysql
注意:第四条命令中,support-files下有多个配置文件可供选择,特性如下:
my-small.cnf是为了小型数据库而设计的。不应该把这个模型用于含有一些常用项目的数据库。
my-medium.cnf是为中等规模的数据库而设计的。如果你正在企业中使用RHEL,可能会比这个操作系统的最小
RAM需求(256MB)明显多得多的物理内存。由此可见,如果有那么多RAM内存可以使用,自然可以在同一台机器上运行其它服务。
my-large.cnf是为专用于一个SQL数据库的计算机而设计的。由于它可以为该数据库使用多达512MB的内存,
所以在这种类型的系统上将需要至少1GB的RAM,以便它能够同时处理操作系统与数据库应用程序。
my-huge.cnf是为企业中的数据库而设计的。这样的数据库要求专用服务器和1GB或1GB以上的RAM。
这些选择高度依赖于内存的数量、计算机的运算速度、数据库的细节大小、访问数据库的用户数量以及在数据库中装入
并访问数据的用户数量。随着数据库和用户的不断增加,数据库的性能可能会发生变化。
my-innodb-heavy-4G为大型应用配置的。这样的数据库要求内存在4Gb
此处我选择了my-small.cnf,因为本身项目需求对数据库要求不高,而且云服务器资源也有限。
如果过程中有报错,可能是相应文件夹没有创建,自行创建就好了。
开启服务
service mysql start netstat -tnl|grep 3306
第二条命令是用来查看本机端口状态。如果显示3306端口有程序在监听,那么就说明mysql启动成功。
三. 远程访问
为了方便我们使用本地的数据库管理工具对mysql进行操作,需要先设置root用户对于mysql的操作权限。
/home/server/mysql/bin/mysqladmin -u root password 'mypassword'
使用mysql的bin目录下的mysqladmin工具,设置root用户及密码。此处的root用户就是linux系统的超级用户。如果不想使用root,可以先开一个具有读写权限的用户,再对其执行以上命令。
登陆mysql
mysql -uroot -pmypassword
授权root
GRANT ALL PRIVILEGES ON *.* TO root IDENTIFIED BY "mypassword"
之后就可以通过MySQL Workbench等工具远程访问数据库了。