[Linux基础环境/软件]Linux下安装mysql
我是使用免安装的包mysql-5.5.28-linux2.6-x86_64.tar.gz(在http://dev.mysql.com/downloads/可以下载到最新的包)的。直接解压,然后配置,初始化数据库,启动即可。
安装步骤有:
解压和建立软链;
配置文件和配置参数;
初始化数据库;
启动和关闭;
建立数据库用户和授权。
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 '[新密码]';
6. 测试:
这样在PC端也可以用管理工具访问了。
//————
//共勉之