安装方式分为rpm和源码编译安装两种,本文是采用mysql源码编译方式,编译器使用Cmake。软件需要mysql-5.5.29.tar.gz和cmake-2.8.10.2.tar.gz,请自行下载。
下载地址:
http://mysql.mirror.kangaroot.net/Downloads/MySQL-5.5/
http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz
其中mysql使用最新的稳定版本,即最新试用版的上一个版本,且非rc或者alpha的版本,Cmake直接用的最新版。
[root@fiona local]# yum install gcc-c++
[root@fiona local]# yum install ncurses-devel
[root@fiona local]# nohup wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz &
[root@fiona src]# tar -zxv -f cmake-2.8.10.2.tar.gz
[root@fiona src]# cd cmake-2.8.10.2
[root@fiona cmake-2.8.10.2]# ./configure
[root@fiona cmake-2.8.10.2]# make
[root@fiona cmake-2.8.10.2]# make install
用vi在文件/etc/profile文件中增加变量,使其永久有效,
[root@fiona cmake-2.8.10.2]# vi /etc/profile
在文件末尾追加以下两行代码:
PATH=/usr/local/cmake-2.8.10.2/bin:$PATH
export PATH
执行以下代码使刚才的修改生效:
[root@fiona cmake-2.8.10.2]# source /etc/profile
用 export 命令查看PATH值
[root@fiona cmake-2.8.10.2]# echo $PATH
[root@fiona local]# mkdir -p /usr/local/mysql //安装mysql
[root@fiona local]# mkdir -p /usr/local/mysql/data //存放数据库
[root@fiona local] groupadd mysql
[root@fiona local]useradd -r -g mysql mysql
7.编译安装mysql
[root@fiona src]# nohup wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.39.tar.gz & //mysql-5.5.39此版本已无
[root@fiona src]# tar zxvf mysql-5.5.39.tar.gz //解压
[root@fiona src]# cd mysql-5.5.29
[root@fiona mysql-5.5.39]#
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306
[root@fiona mysql-5.5.39]# make
[root@fiona mysql-5.5.39]# make install
[root@fiona mysql-5.5.39]# cd /usr/local/mysql
[root@fiona mysql]# ls
bin data include lib mysql-test scripts sql-bench
COPYING docs INSTALL-BINARY man README share support-files
有bin等以上文件的话,恭喜你已经成功安装了mysql。
[root@fiona mysql]# cd /usr/local/mysql //把当前目录中所有文件的所有者设为root,所属组为mysql
[root@fiona mysql]# chown -R root:mysql .
[root@fiona mysql]# chown -R mysql:mysql data
[root@fiona mysql]# cp support-files/my-medium.cnf /etc/my.cnf
cp:是否覆盖"/etc/my.cnf"? y
[root@fiona mysql]# cd /usr/local/mysql
[root@fiona mysql]# scripts/mysql_install_db --user=mysql
[root@fiona mysql]# vi /root/.bash_profile
在修改PATH=$PATH:$HOME/bin为:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
[root@fiona mysql]# source /root/.bash_profile //使刚才的修改生效
[root@fiona mysql]# ./bin/mysqld_safe --user=mysql & //启动MySQL,但不能停止
mysqladmin -u root -p shutdown //此时root还没密码,所以为空值,提示输入密码时,直接回车即可。
[root@fiona mysql]# cp support-files/mysql.server /etc/init.d/mysql
[root@fiona mysql]# service mysql start
Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid).
启动失败:
我这里是权限问题,先改变权限
[root@fiona mysql]# chown -R mysql:mysql /usr/local/mysql
接着启动服务器
[root@fiona mysql]# /etc/init.d/mysql start
Note:
MySQL启动方式
1
2
3
4
5
6
7
8
9
10
11
12
13
|
cp mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
如上配置之后,就可以利用以下命令启动和关闭MySQL实例了:
service mysqld start/stop
/etc/init.d/mysqld start/stop
使用chkconfig命令配置开机自动启动:
[sql]
chkconfig--add mysqld
chkconfig mysqldon
运行以下命令检查是否正确启用:
[plain]
[root@data data]# chkconfig--list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off MySQL关闭方式
|
1
|
<span style="white-space:normal;">mysqladmin -p -u root shutdown </span>
|
1
2
3
|
启动后,后台运行的进程
root 2294 1 0 03:53 pts/1 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe--datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/fiona.pid
mysql 2595 2294 0 03:53 pts/1 00:00:00 /usr/local/mysql/bin/mysqld--basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/fiona.err --pid-file=/usr/local/mysql/data/fiona.pid --socket=/usr/local/mysql/mysql.sock --port=3306
|
[root@localhost mysql]# mysql -u root mysql
mysql> use mysql;
mysql> desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; //为root添加远程连接的能力
mysql> update user set Password = password('abc123') where User='root'; //设置root用户密码
mysql> select Host,User,Password from user where User='root';
mysql> flush privileges;
mysql> exit
[root@localhost mysql]# mysql -u root -p
Enter password:abc123
若还不能进行远程连接,关闭防火墙
[root@localhost]# /etc/rc.d/init.d/iptables stop
18.配置Innodb
[root@fiona plugin]# cd /etc
[root@fiona etc]# vi my.cnf
# To take best advantage of current InnoDB features
innodb_file_per_table=1
innodb_file_format=barracuda
innodb_strict_mode=1
mysql启动的四种方式(推荐mysql_safe)
http://blog.chinaunix.net/uid-13642598-id-3153537.html
mysql DBA:mysqladmin常用命令总结
http://www.jb51.net/article/48169.htm#
http://www.linuxidc.com/Linux/2011-03/33362.htm
mysql之编译安装mysql以及mysql mysqladmin工具的使用说明
http://www.it165.net/database/html/201404/5890.html
mysql的监听端口是 3306
[root@fiona2 bin]# ss -tnl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:37677 *:*
LISTEN 0 128 :::111 :::*
LISTEN 0 128 *:111 *:*
LISTEN 0 128 :::22 :::*
LISTEN 0 128 *:22 *:*
LISTEN 0 128 127.0.0.1:631 *:*
LISTEN 0 128 ::1:631 :::*
LISTEN 0 128 :::19419 :::*
LISTEN 0 50 *:3306 *:*
[root@fiona2 bin]# mysqladmin -uroot -p processlist
+----+------+-----------+----+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+-----------+----+---------+------+-------+------------------+
| 7 | root | localhost | | Query | 0 | | show processlist |
+----+------+-----------+----+---------+------+-------+------------------+
===================================================
[root@fiona home]# su - mysql
su: 警告:无法切换到目录/home/mysql: 没有那个文件或目录
# cp -rfv /etc/skel/.* /home/mysql
# chown -Rv mysql.mysql /home/mysql
解决bash: mysql: command not found 的方法
原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。
首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:
# ln -s /usr/local/mysql/bin/mysql /usr/bin
创建人 | 高元_G·Marshal |
文档编辑权限 | 创建者私有 |
文档阅读权限 | 来自分类 |
分类阅读权限 | 所有人 |
分类编辑权限 | 所有人 |
分类审核权限 | 无 |
修改日期 | 修改人 | 备注 |
2017-06-21 14:46:35[当前版本] | 高元_G·Marshal | CREAT |