Linux(CentOS)环境下MySQL的安装、配置与使用

来源:互联网 发布:一厘米的距离抄袭知乎 编辑:程序博客网 时间:2024/04/30 05:24

1.准备

注意:检查服务器是否已经安装过mysql,若已安装可能会导致安装失败,卸载方法如下:
比如用yum安装过mysql-server,用命令# yum remove mysql删除。

通过rpm命令查看之前是否安装过mysql:

# rpm -qa|grep -i mysql

若可以看到有已安装的包,比如:mysql-4.1.12-3.RHEL4.1。可以通过以下命令来删除:

# rpm -ev mysql-4.1.12-3.RHEL4.1 

同时,查找老版本的mysql目录,命令:

# find / -name mysql

假设查询到如下的目录:

这里写图片描述
删除对应的目录:

# rm -rf /usr/lib64/mysql# rm -rf /usr/share/mysql# rm -rf /var/lib/mysql......

再次用命令:# find / -name mysql查找,发现均已删除。

一般卸载后/etc/my.cnf不会被删除,需要手动删除:

# rm -f /etc/my.cnf

下面去下载我们想要安装的mysql:

假定已经从www.mysql.com上下载了mysql安装包,并放在/home/sw下面。
文件名: mysql-5.5.25a-linux2.6-x86_64.tar.gz

2.解压缩mysql

假定安装目录为/opt

# cd /opt# tar zxf /home/sw/mysql-5.5.25a-linux2.6-x86_64.tar.gz# ln -s ./mysql-5.5.25a-linux2.6-x86_64/ ./mysql

假定数据目录为/home/mysql/data
确定数据目录时,最好通过df -k命令查看数据目录所在的空间足够大。

# mkdir -p /home/mysql/data# mkdir -p /home/mysql/conf# mkdir -p /home/mysql/logs

3.安装mysql

# groupadd mysql# useradd -r -g mysql mysql# cd /opt/mysql# chown -R mysql .# chgrp -R mysql .# chown -R mysql /home/mysql/*# chgrp -R mysql /home/mysql/*# ./scripts/mysql_install_db --user=mysql --datadir=/home/mysql/data# chown -R root .

4.配置并启动mysql

如果有现成的my.cnf文件可以借用,可将该文件拷贝到/etc/my.cnf。如果没有,则可执行下面的命令:

#cp ./support-files/my-medium.cnf /etc/my.cnf

通过vim命令,打开并修改/etc/my.cnf模板文件。
配置文件主要考虑以下内容给的修改:
a. 日志文件、pid文件、数据文件、socket文件所在的位置;
b. 数据库大小写的区分;
c. 中文码制的设定;
d. 连接数的设定;

[client]#password = your_passwordport = 3306socket = /tmp/mysql.sockdefault-character-set=utf8[mysqld]port            = 3306socket          = /tmp/mysql.sockbasedir         = /opt/mysqlplugin-dir      = /opt/mysql/lib/pluginlog-error       = /home/mysql/logs/mysql.errpid-file        = /home/mysql/conf/mysql.piddatadir         = /home/mysql/datalower_case_table_names = 1character-set-server=utf8max_connections = 10000

更改配置之后,即可启动数据库了:

#./bin/mysqld_safe --user=mysql &

启动之后,可以运行如下命令进入MySQL的命令行模式:

#./bin/mysql -uroot -p

root缺省密码为空,回车即可。

进入之后,在mysql命令行模式下,运行

mysql>show databases;

如需更改root密码,可退出mysql命令行模式,并在/opt/mysql目录下,运行mysqladmin命令。

mysql>quit#./bin/mysqladmin -uroot -p password

首先提示输入root现有密码(为空,回车即可),然后提示输入新密码,并再次输入以确认。

(4)创建数据库,以及用户
在/opt/mysql目录下,输入./bin/mysql -uroot -p进入mysql命令行模式。然后创建数据库,并授予用户权限(同时也创建了该用户)。

mysql> create database gloa default character set utf8 default collate utf8_general_ci;Query OK, 1 row affected (0.00 sec)mysql> grant all privileges on gloa.* to gloauser@'%' identified by 'gloa123' with grant option;Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)

也可通过如下命令查看码制的设定是否正确:

mysql> show variables like 'chara%';+--------------------------+----------------------------------------------------+| 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       | /opt/env/mysql-5.5.25a-linux2.6-x86_64/share/charsets/ |+--------------------------+----------------------------------------------------+8 rows in set (0.00 sec)

(5)关闭数据库
在/opt/mysql目录下,输入./bin/mysqladmin -uroot -p shutdown关闭数据库,之后运行ps -ef | grep mysql进行确认。

# ./bin/mysqladmin -uroot -p shutdownEnter password:150111 21:32:02 mysqld_safe mysqld from pid file /home/mysql/conf/mysql.pid ended[1]+  Done                    ./bin/mysqld_safe --user=mysql# ps -ef | grep mysqlroot     59222 40951  0 21:32 pts/0    00:00:00 grep mysql#

如需将mysql作为系统的服务运行,可以执行如下的命令,并对mysql.server进行相应的修改。

#cp support-files/mysql.server /etc/init.d/mysql.server
1 0
原创粉丝点击