Mysql 安装编译配置项说明
来源:互联网 发布:大数据分析模型 包括 编辑:程序博客网 时间:2024/06/06 08:49
转自:http://blog.ender.in/
使用MySQL也已经有好多年了,Paul Dubois的那本MySQL (Developer’s Library)当年也从头到尾的翻了好多好多遍。但是由于各种原因,没有总结留下任何东西。以前使用MySQL都用的C API,最近打算开始学习PHP,自然离不开MySQL,所以打算把这些年学习的MySQL的相关知识总结一下,写在这篇文章中。既然命名为Tips,那么就要有Tips的样子,我的目标是短小精悍,那么就不可能长篇的议论,我打算通过一种舒服的方式,把MySQL常用功能和API总结出来,在过很久之后看的时候,能够立即回想起来MySQL的一些知识要点,快速的进入开发状态之中。
1. 安装
在使用MySQL之前,最先要做的就是安装。在Windows上的安装我就不说了,非常简单直接。这里说一下在Linux/UNIX系统上的安装。
当然,我指的是编译安装。使用apt或者yum安装MySQL的同学们可以不看这部分内容了。首先,在一个空白的系统上,需要安装gcc,gcc-c++,ncurses-devel,这是在CentOS 5.4上的包名称,使用其他发行版的同学,自己查找一下这三个包对应的名称,安装就可以了。去MySQL的官方网站下载MySQL源码包吧。
http://dev.mysql.com/downloads/mysql/
configure的时候需要一些参数,这些参数可以./configure –help查看说明,也可以去官方网站查询文档,这里我记录一下自己选用的一些参数含义。
静态编译
–enable-static
–with-client-ldflags=-all-static
–with-mysqld-ldflags=-all-static
以线程方式编译客户端
–enable-thread-safe-client
去掉innodb表支持
–without-innodbinnodb是一种支持事务处理的表,适合企业级应用。去掉isam表类型支持
–without-isamisam表是一种依赖平台的表,现在很少用了。取消导航调试–without-ndb-debug 日志文件目录–localstatedir=/usr/local/mysql/var/ MySQL后缀名–with-server-suffix=-enterprise-gpl在用mysql登录的时候在版本号的后面可以看到。去除诊断模式–without-debug如果用–with-debug=full编译,大多数查询慢20%。大表支持–with-big-tables 字符集–with-extra-charsets=gbk,gb2312,utf8设置支持gbk,gb2312,utf8字符集。强制使用pthread库–with-pthreadPOSIX线程库。汇编–enable-assembler 默认字符集–with-charset=utf8 使用unix套接字–with-unix-socket-path=/tmp/mysql.sock据说提高7.5%性能连接性能,所以在windows下mysql性能肯定不如unix。端口–with-tcp-port=3306指定MySQL服务将监听TCP 3306端口。
对于大部分应用来说,上面的参数基本不用设置。对于中国用户来说,则最多需要设置一下字符集。
我的configure命令:
./configure –with-charset=utf8 -with-extra-charsets=all –prefix=/home/mysql
当然,这个命令的前提是系统中要有一个/home/mysql的文件夹,我是用创建一个名称为mysql的用户来做到这点的,而且,configure命令也是使用mysql用户运行的,添加一个mysql用户的命令很简单,下面这句可以直接复制粘贴。
sudo useradd -m -c "MySQL Server" -d /home/mysql -s /bin/bash -u 502 mysql
然后make && make install,再更改下权限:sudo chown mysql:mysql -R mysql 。
2. 配置
安装好了之后,需要运行mysql_install_db来初始化数据库。这个命令可以有不少参数,下面列一下。
–basedir=/usr/local/mysql默认mysql路径–datadir=/usr/local/mysql/data默认mysql数据路径–user=mysql默认使用mysql服务用户–defaults-file=/usr/local/mysql/my.cnf默认配置文件–pid-file=/usr/local/mysql/mysql.pid默认PID文件路径
另外,MySQL配置文件命名为my.cnf,存储的位置和读取顺序在这里做一个说明。
文件名说明/etc/my.cnf全局选项$MYSQL_HOME/my.cnf服务器相关选项defaults-extra-file服务器启动时用–defaults-extra-file=path指定的文件~/.my.cnf用户相关选项
MYSQL_HOME是一个环境变量,包含服务器相关的my.cnf文件驻留的目录路径。
如果未设置MYSQL_HOME,并且DATADIR中有一个my.cnf文件,BASEDIR中没有my.cnf文件,mysqld_safe将MYSQL_HOME设置为DATADIR。否则,如果未设置MYSQL_HOME并且在DATADIR中没有my.cnf,则mysqld_safe将MYSQL_HOME设置为BASEDIR。
典型情况为/usr/local/mysql/data,请注意这是配置时指定的数据目录的位置,而不是mysqld_safe启动时用–datadir指定的。运行时使用–datadir对寻找选项文件的服务器没有效果,因为服务器在处理命令行参量之前寻找这些选项。
MySQL按照上述顺序寻找选项文件,并读存在的选项文件。如果你想要使用的某个选项文件不存在,则用明文文本编辑器创建。如果存在多个选项文件,文件中指定的后读取的选项要优先文件中指定的先读取的选项。
可以从MySQL安装目录/share/mysql/下拷贝一个配置文件到mysql用户目录下,重命名为.my.cnf,我的拷贝命令:
cp share/mysql/my-medium.cnf .my.cnf
注释掉其中的skip-federated选项,如果有的话。
3. 启动和关闭
有两种启动方式:
一种是运行mysqld_safe 参数 &,例如:
mysqld_safe –defaults-file=/usr/local/mysql/my.cnf –user=mysql &
另一种是运行MySQL安装目录/share/mysql/mysql.server 参数,例如:
/home/mysql/share/mysql/mysql.server start
关闭MySQL可以kill掉进程,也可以使用/home/mysql/share/mysql/mysql.server stop 命令。
4. 命令
首先要给root设置一下密码,这个我们采用
/home/mysql//bin/mysqladmin -u root password ‘new-password’
或者
/home/mysql//bin/mysqladmin -u root -h ehost.edomain password ‘new-password’
的方式。
4.1. 创建用户
虽然创建用户有好多种方式,但是我在这里只说一种,这种记住了就可以了。
GRANT命令:
GRANT [PRIVILEGES, …] ON [database].[table] TO ‘user’@'somehost’ IDENTIFIED BY ‘password’ [WITH GRANT OPTION];
下面是几个例子:
GRANT ALL PRIVILEGES ON *.* TO ‘monty’@'localhost’ IDENTIFIED BY ‘some_pass’ WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO ‘monty’@'%’ IDENTIFIED BY ‘some_pass’ WITH GRANT OPTION;
GRANT RELOAD,PROCESS ON *.* TO ‘admin’@'localhost’;
GRANT USAGE ON *.* TO ‘dummy’@'localhost’;
其实,登陆进去之后,help grant就可以理解得到很详细的说明了。说到这里,郑重的跟大家说,多用help,多看文档,不要老用Google,哈哈
- Mysql 安装编译配置项说明
- Mysql绿色版安装配置说明
- 【Linux】MySQL安装配置说明
- 【win】MySQL安装配置说明
- mysql非安装配置说明
- mysql编译安装与配置
- CMAKE安装MySQL的配置参数说明
- mysql-5.1.30-win32 安装配置说明
- MySQL免安装版配置说明
- mysql中cmake常用参数说明 和 编译安装mysql
- mysql中cmake常用参数说明 和 编译安装mysql
- MySQL源码编译和安装配置
- 编译安装MySQL ,J2EE环境配置
- Linux环境编译安装、配置Mysql
- 关于安装mysql编译时“卡住"的说明
- php xdebug的编译安装以及配置说明
- php xdebug的编译安装详解以及配置说明
- eCos编译配置说明
- 基于Java多线程的下载器源码剖析(一)
- php5.4新功能Traits
- 黑马程序员_交通灯管理系统
- web service
- 利用Window超级终端,修改短信猫波特率
- Mysql 安装编译配置项说明
- 一个游戏程序员的学习资料
- Windows Phone开发(36):动画之DoubleAnimation
- 延迟渲染的一些思考
- Android应用资源---样式资源类型(Style)
- 延迟渲染,及材质ID
- 这两个月找实习的经历
- Android_Gallery(画廊)
- KlayGE中的延迟渲染