mysql5.5开始,源码配置编译工具configure变成了cmake,所以先要去把cmake装上。并安装make,bison,cmake,gcc-c++,ncurses的包

去http://www.cmake.org/cmake/resources/software.html 下载cmake

./cmake-2.8.12.2-Linux-i386.sh --prefix=/usr/local/

ln -s /usr/local/cmake-2.8.12.2-Linux-i386/bin/cmake /usr/bin/cmake

先执行#cmake.-LH 检查一下cmake查看支持的参数,也可以去http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html 查看编译时可指定参数的详细描述,还可以参考安装文档里面的这一章节:2.9.4 MySQL Source-Configuration Options。

常用参数如下:

CMAKE_INSTALL_PREFIX:指定MySQL程序的安装目录,默认/usr/local/mysql
DEFAULT_CHARSET:指定服务器默认字符集,默认latin1
DEFAULT_COLLATION:指定服务器默认的校对规则,默认latin1_general_ci
ENABLED_LOCAL_INFILE:指定是否允许本地执行LOAD DATA INFILE,默认OFF
WITH_COMMENT:指定编译备注信息
WITH_xxx_STORAGE_ENGINE:指定静态编译到mysql的存储引擎,MyISAM,MERGE,MEMBER以及CSV四种引擎默认即被编译至服务器,不需要特别指定。
WITHOUT_xxx_STORAGE_ENGINE:指定不编译的存储引擎
SYSCONFDIR:初始化参数文件目录
MYSQL_DATADIR:数据文件目录
MYSQL_TCP_PORT:服务端口号,默认3306
MYSQL_UNIX_ADDR:socket文件路径,默认
/tmp/mysql.sock

实际执行时指定的参数如下:

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc\
-DDEFAULT_CHARSET=utf8\
-DDEFAULT_COLLATION=utf8_general_ci\
-DMYSQL_USER=mysql
[root@nosql1 mysql-5.5.37]# cmake . -DCMAKE_INSTALL_PREFIX=/u01/mysql -DMYSQL_DATADIR=/u01/mysql/mysql/data -DSYSCONFDIR=/etc\
> -DDEFAULT_CHARSET=gbk\
> -DDEFAULT_COLLATION=gbk_general_ci\
> -DMYSQL_USER=mysql
-- Running cmake version 2.6.4
-- MySQL 5.5.37
-- Packaging as: mysql-5.5.37-Linux-x86_64
-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
CMake Error at cmake
/readline.cmake:83 (MESSAGE):
Curses library not found. Please
install appropriate package,

remove CMakeCache.txt and rerun cmake.On Debian
/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
Call Stack (most recent call first):
cmake
/readline.cmake:127 (FIND_CURSES)
cmake
/readline.cmake:217 (MYSQL_USE_BUNDLED_LIBEDIT)
CMakeLists.txt:
355 (MYSQL_CHECK_READLINE)


-- Configuring incomplete, errors occurred!

cmake过程中,报了一个这个错,根据提示安装ncurses-devel,并find / -name CMakeCache.txt,把列出来的删除点,重新cmake就行了。

然后接着make

然后再执行make install

编译完成后,安装数据库

[root@ora11g mysql]# ls
bin COPYING data docs include INSTALL
-BINARY lib man mysql-test README scripts share sql-bench support-files
[root@ora11g mysql]# cd scripts
/
[root@ora11g scripts]#
ls
mysql_install_db
[root@ora11g scripts]# .
/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot
time you have to copy
support
-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER
!
To
do so, start the server, then issue the following commands:

/usr/local/mysql/bin/mysqladmin -u root password 'new-password'
/usr/local/mysql/bin/mysqladmin -u root -h ora11g password 'new-password'

Alternatively you can run:
/usr/local/mysql/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended
for production servers.

See the manual
for more instructions.

You can start the MySQL daemon with:
cd
/usr/local/mysql ; /usr/local/mysql/bin/mysqld_safe &

You can test the MySQL daemon with mysql
-test-run.pl
cd
/usr/local/mysql/mysql-test ; perl mysql-test-run.pl

Please report any problems at http:
//bugs.mysql.com/

[root@ora11g scripts]#

这一步也可以先修改support-files里面的模板,在模板里面添加上--basedir=/usr/local/mysql--datadir=/usr/local/mysql/data

如果不加basedir和datadir的话,初始化会报错:

[root@nosql1 scripts]# ./mysql_install_db  --defaults-file=../my.cnf --user=mysql                 

FATAL ERROR: Could not
find ./bin/my_print_defaults

If you compiled from source, you need to run
'make install' to
copy the software into the correct location ready
for operation.

If you are using a binary release, you must either be at the top
level of the extracted archive, or pass the
--basedir option

在bin下执行,mysql_install_db --default-file=my.cnf --user=mysql

mysql的启动:

[mysql@ora11g ~]$ cd /usr/local/mysql/bin/
[mysql@ora11g bin]
$ ./mysqld
mysqld mysqld_multi mysqld_safe mysqldump mysqldumpslow
[mysql@ora11g bin]
$ ./mysqld_safe --user=mysql &
[
1] 2244
[mysql@ora11g bin]
$ 140327 21:17:41 mysqld_safe Logging to '/usr/local/mysql/data/ora11g.err'.
140327 21:17:41 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data

[mysql@ora11g bin]
$
[mysql@ora11g bin]
$ ps -ef | grep mysql
root
2082 1786 0 21:17 pts/2 00:00:00 su - mysql
mysql
2083 2082 0 21:17 pts/2 00:00:00 -bash
mysql
2244 2083 0 21:17 pts/2 00:00:00 /bin/sh ./mysqld_safe --user=mysql
mysql
2496 2244 1 21:17 pts/2 00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/ora11g.err --pid-file=/usr/local/mysql/data/ora11g.pid --socket=/tmp/mysql.sock --port=3306
mysql
2579 2083 0 21:17 pts/2 00:00:00 ps -ef
mysql
2580 2083 0 21:17 pts/2 00:00:00 grep mysql
[mysql@ora11g bin]
$

mysql的登录:

[mysql@ora11g bin]$ ./mysql
Welcome to the MySQL monitor. Commands end with ;
or \g.
Your MySQL connection id
is 1
Server version:
5.5.37 Source distribution

Copyright (c)
2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle
is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type
'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql
> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.5.37 |
+-----------+
1 row in set (0.00 sec)

mysql
>

更多相关文章

  1. 与MySQL服务器进行大量睡眠连接的可能原因?
  2. 解析innodb status各项参数
  3. 客户端处理和服务器端处理,哪个比较快?
  4. 如何将对象作为参数传播给函数?
  5. 如何在javascript函数中将URL编码为参数?
  6. 根据循环中的i改变函数中的参数
  7. 返回JsonResult会导致500内部服务器错误
  8. 从服务器(任何服务器)获取当前日期和时间。仅限javascript
  9. 在传递给google.setOnLoadCallback()的函数中使用参数;

随机推荐

  1. 如何使用mysqldump在帐户之间复制视图?
  2. MySQL数据库引擎简介
  3. 如何使用MySql和PHP存储/处理多个表的数
  4. 使用cmake安装mysql5.5.13
  5. Linux测试环境搭建apache+mysql+php
  6. 如何使用本地phmyadmin客户端访问远程服
  7. Failed while installing Dynamic Web Mo
  8. MySQLDriverCS Exception: MySQLDriverCS
  9. Mysql字符集和校验规则
  10. PHP读取Excel文件的内容并写入Mysql数据