您的位置:首页 > 运维架构 > Linux

Linux下免安装mysql

2016-04-12 14:48 337 查看

我是使用免安装的包mysql-5.6.30-linux2.6-x86_64.tar.gz(在http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.30-linux-glibc2.5-x86_64.tar.gz)的。直接解压,然后配置,初始化数据库,启动即可。

安装步骤有:

解压和建立软链;

配置文件和配置参数;

初始化数据库;

启动和关闭;

建立数据库用户和授权。

1. 解压和建立软链:

#tar xzvf mysql-5.5.28-linux2.6-x86_64.tar.gz        #在/usr/local目录下
#ln -s mysql-5.5.28-linux2.6-x86_64 mysql            #创建软链


2. 配置文件和配置参数:
mysql会将默认的配置文件保存在mysql/support-files/下。我们把mysql/support-files/my-medium.cnf 复制一份到/etc下然后进行配置。

#cp usr/local/mysql/support-files/my-medium.cnf etc/my.cnf


在my.cnf文件添加相关配置,下面红色部分是我修改和添加的内容,相关目录根据自己的需要配置。

[client]
default-character-set = utf8
# password = your_passsword
port = 3306
socket = /tmp/mysql_3306.sock

# The MySQL server
[mysqld]
character-set-server = utf8
# user = mysql
port = 3306
socket = /tmp/mysql_3306.sock
skip-external-locking
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/log/mysql_error.log
pid-file = /tmp/mysql.pid

key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64


3. 初始化数据库:
mysql自带了mysql和test两个数据库。而mysql-5.5.28-linux2.6-x86_64.tar.gz包是没有初始化的。所以我们先要初始化。在mysql/bin或者mysql/scripts下有个 mysql_install_db 可执行文件,执行即可(要保证其无报错)。

#./mysql_install_db  --verbose --user=root --defaults-file=/etc/my.cnf --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql --tmpdir=/tmp


4. 启动和关闭:
执行bin/mysqld_safe 文件可以启动mysql。

#./mysqld_safe --defaults-file=/etc/my.cnf --socket=/tmp/mysql_3306.sock --user=root &


之前我在没有初始化的时候执行启动,遇到了报错,报错内容会在my.cnf的log-error配置路径下。上面最后的“&”表示后台执行的意思。

关闭mysql可以直接kill掉进程,也可以使用bin/mysqladmin可执行文件操作。

#./mysqladmin -u root -p [密码] shutdown


5. 建立数据库用户和授权:
在bin/里面执行mysql文件,连接数据库。

#./mysql -uroot


连接成功之后可以创建一个数据库用户,供远程访问,你总不能用root去访问数据库吧。另外还要设置其权限,譬如建表、建库、增删查改。grant可以修改用户的权限和密码。

建立用户:

mysql>CREATE USER [用户名] IDENTIFIED BY '[密码]';
mysql>CREATE USER [用户名]@[固定登录地址(譬如localhost)] IDENTIFIED BY '[密码]'


授权:

mysql>GRANT select, insert, update, delete, create ON *.* TO [用户名];
mysql>GRANT select, insert, update, delete, create ON *.* TO [用户名]@[固定登录地址(譬如localhost)];


修改密码:

mysql>GRANT ALL PRIVILEGES ON PUREFTPD.* TO [用户名] IDENTIFIED BY '[新密码]';
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: