MySQL数据库系统基础

mysql是一个真正的多线程,多用户的SQL数据库,凭借其性能,高可用性和易于使用的特性。成为服务器领域中最受欢迎的开源数据库系统。
一,MySQL的编译安装
为确保mysql数据库功能完整性,可定制型,采用源码编译安装方式安装mysql数据库系统。mysql 5.x系列版本的使用最为广泛,该版本的稳定性,兼容性都不错,这里将选用mysql-5.5.22.tar.gz为例,官方网站:http://www.mysql.com
1,准备工作
1).为避免发生端口冲突,程序冲突等现象,建议先查询MySQL软件的安装情况,确认没有使用以RPM方式安装的mysql-server,mysql软件包,否则建议将其卸载。
rpm  -q mysql-server mysql
rpm -ivh /media/RHEL_6.5\x86_64\Disc\1/Packages/ncurses-devel-5.7-3.20090208.el6.x86_64.rpm
//安装光盘自带的ncurses-devel包
2).mysql 5.5 需要cmake编译安装,所以先安装cmake包。
tar  zxf cmake-2.8.6.tar.gz
cd cmake-2.8.6
./configure
gmake && gmake install
2.源码编译及安装
1)创建运行用户
为加强数据库访问控制,建议使用专门的运行用户,如mysql。此用户不需要直接登录到系统,可以不创建宿主文件夹。
groupadd  mysql
useradd  -M  -s  /sbin/nologin  mysql   -g   mysql          //-M:表示不指定宿主目录   -s /sbin/nologin:表示不允许本地登录
2).解包
将下载的mysql源码包解压,释放到/usr/src目录下,并切换到展开后的源码目录。
tar zxf mysql-5.5.22.tar.gz  -C  /usr/src
cd /usr/src/mysql-5.5.22
3)配置
在内容丰富,结构庞大的企业网站平台中,可能会用到多种字符街的网页,相应的数据库系统也应该支持不同的字符集编码。在配置过程中,可以将默认使用的字符集设置为utf8,并添加其他字符集的支持。
cmake  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql  -DSYSCONFDIR=/etc 
-DDEFAULT_CHARSET=utf8  -DDEFAULT_COLLATION=utf8_general_ci   -DWITH_EXTRA_CHARSETS=all
上述命令,各选项含义如下:
-DCMAKE_INSTALL_PREFIX:指定将mysql数据库程序安装到某目录下,如:/usr/local/mysql
-DSYSCONFDIR:指定初始化参数文件目录
-DDEFAULT_CHARSET:指定默认使用的字符集编码,如utf8
-DDEFAULT_COLLATION:指定默认使用的字符集校对规则,utf8_general_ci是适用于UTF-8字符集的通用规则。
-DWITH_EXTRA_CHARSETS:指定额外支持的其他字符集编码。
4)编译并安装
make
make install
3.安装后的其他调整
1)对数据库目录进行权限设置
chown -R mysql:mysql  /usr/local/mysql
2)建立配置文件
在mysql源码目录中的support-files文件夹下,提供了适合不同负载数据库的样本配置文件。如果不确定数据库系统的应用规模,一般选择my-medium.cnf文件即可,该文件能够满足大多数企业的中等应用需求。根据以下参考内容建立MySQL系统的/etc/my.cnf配置文件。
rm -rf  /etc/my.cnf         //如果原来etc文件夹下有my.cnf文件可以删除
cp support-files/my-medium.cnf  /etc/my.cnf
3)初始化数据库
为能够正常使用mysql数据库系统,应以运行用户mysql的身份执行初始化脚本mysql_install_db,指定数据存放目录等。
/usr/local/mysql/scripts/mysql_install_db  --user=mysql  --basedir=/usr/local/mysql  
--datadir=/usr/local/mysql/data/
4)设置环境变量
为方便在任何目录下使用mysql命令,需要在/etc/profile设置环境变量。
echo  “PATH=$PATH:/usr/local/mysql/bin” >>  /etc/profile
.  /etc/proofile                                                                                                //立即生效
4.添加系统服务
若希望添加mysqld服务,以便通过chkconfig进行管理,可以直接使用源码包中提供的服务脚本。找到support-files文件夹下的mysql.server脚本文件,将其复制到/etc/rc.d/init.d目录下,并改名为mysqld,然后再设置执行权限,通过执行“chkconfig”命令将其添加为mysqld系统服务。
cp  support-files/mysql.server  /etc/rc.d/init.d/mysqld
chmod   +x   /etc/rc.d/init.d/mysqld
chkconfig  --add   mysqld
这样,以后就可以使用service工具或直接执行/etc/init.d/mysqld脚本来控制mysql数据库服务了。例如,启动mysql服务,并查看其运行状态,可以执行如下操作。
service   mysqld  start
/etc/init.d/mysqld     status
netstat  -anpt  |  grep  mysqld
mysql服务器默认使用TCP 3306 端口提供服务。通过编辑/etc/my.cnf配置文件中[mysqld]配置段的“port=3306”行,可以更改监听端口。
二.访问Mysql数据库
mysql数据库系统也是一个典型的C/S(客户端/服务器)架构的应用,要访问mysql数据库需要使用专门的客户端软件。在linux系统中,最简单,易用的mysql客户端软件是其自带的mysql命令工具。
1.登录到mysql服务器
经过安装后的初始化过程,mysql数据库的默认管理员用户名为“root”,密码为空。若要以未设置密码的root用户登录本机的mysql数据库,可以执行如下操作。
mysql   -u   mysql                                  //"-u" 用于指定认证用户
在有密码的情况下,还应使用“-p”选项来进行密码校验。
mysql  -u   root    -p
2.执行mysql操作语句
验证成功后将会进入提示符为“mysq>”的数据库操作环境,用户可以输入各种操作语句对数据库进行管理。每一条mysql操作语句以分号“;”表示结束,输入时可以不区分大小写,但习惯上以mysql语句中的关键字部分大写。
例如,以用户名root登录到“mysql>”环境后,执行“SHOW MASTER LOGS;”语句可以查看当前数据库服务的日志文件信息。
3.退出"mysql>"操作环境
在"mysql>"操作环境中,执行“EXIT”或"QUIT"命令可以退出mysql命令工具,返回原来的shell环境。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章