1.1二进制包安装MySQL数据库
1.1.1 安装前准备(规范)
1 [root@Mysql_server ~]# mkdir -p /home/zhurui/tools ##创建指定工具包存放路径
2 [root@Mysql_server ~]# wget http://ftp.ntu.edu.tw/pub/MySQL/Downloads/MySQL-5.5/mysql-5.5.32-linux2.6-x86_64.tar.gz ##下载二进制包
3 [root@Mysql_server tools]# tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz ##解压Mysql包
4 [root@Mysql_server tools]# useradd -s /sbin/nologin -M mysql ##创建mysql用户
5 [root@Mysql_server tools]# id mysql
6 uid=501(mysql) gid=501(mysql) groups=501(mysql)
7 [root@Mysql_server ~]# mkdir /application/
8 [root@Mysql_server home]# mv /home/zhurui/tools/mysql-5.5.32-linux2.6-x86_64 /application/mysql-5.5.32
9 [root@Mysql_server tools]# ll /application/
10 total 4
11 drwxr-xr-x. 13 root root 4096 Dec 13 14:31 mysql-5.5.32
12 [root@Mysql_server tools]# ln -s /application/mysql-5.5.32/ /application/mysql ##设置软链接
13 [root@Mysql_server tools]# ll /application/
14 total 4
15 lrwxrwxrwx. 1 root root 26 Dec 13 14:39 mysql -> /application/mysql-5.5.32/
16 drwxr-xr-x. 13 root root 4096 Dec 13 14:31 mysql-5.5.32
17 [root@Mysql_server tools]# ll /application/mysql/
18 total 76
19 drwxr-xr-x. 2 root root 4096 Dec 13 14:31 bin
20 -rw-r--r--. 1 7161 wheel 17987 Jun 19 2013 COPYING
21 drwxr-xr-x. 3 root root 4096 Dec 13 14:31 data
22 drwxr-xr-x. 2 root root 4096 Dec 13 14:30 docs
23 drwxr-xr-x. 3 root root 4096 Dec 13 14:31 include
24 -rw-r--r--. 1 7161 wheel 7470 Jun 19 2013 INSTALL-BINARY
25 drwxr-xr-x. 3 root root 4096 Dec 13 14:31 lib
26 drwxr-xr-x. 4 root root 4096 Dec 13 14:31 man
27 drwxr-xr-x. 10 root root 4096 Dec 13 14:31 mysql-test
28 -rw-r--r--. 1 7161 wheel 2496 Jun 19 2013 README
29 drwxr-xr-x. 2 root root 4096 Dec 13 14:31 scripts
30 drwxr-xr-x. 27 root root 4096 Dec 13 14:31 share
31 drwxr-xr-x. 4 root root 4096 Dec 13 14:31 sql-bench
32 drwxr-xr-x. 3 root root 4096 Dec 13 14:31 support-files
1.1.2 初始化数据库
1 [root@Mysql_server tools]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql ##初始化数据库
2 Installing MySQL system tables...
3 OK
4 Filling help tables...
5 OK
6 [root@Mysql_server tools]# ll /application/mysql/data/ ##查看初始化结果
7 total 12
8 drwx------. 2 mysql root 4096 Dec 13 14:45 mysql
9 drwx------. 2 mysql mysql 4096 Dec 13 14:45 performance_schema
10 drwxr-xr-x. 2 mysql root 4096 Dec 13 14:31 test
1.1.3 授权Mysql管理数据库文件
1 [root@Mysql_server ~]# chown -R mysql.mysql /application/mysql/
2 [root@Mysql_server ~]# ll /application/mysql
3 lrwxrwxrwx. 1 mysql mysql 26 Dec 13 14:39 /application/mysql -> /application/mysql-5.5.32/
1.1.4 生成Mysql配置文件
1 [root@Mysql_server tools]# \cp /application/mysql/support-files/my-small.cnf /etc/my.cnf
1.1.5 配置启动Mysql
1 [root@Mysql_server tools]# sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe /application/mysql/support-files/mysql.server
2 [root@Mysql_server tools]# cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld ##将生成的启动脚本拷贝到init.d目录下
3 [root@Mysql_server tools]# chmod +x /etc/init.d/mysqld
1.1.6 启动Mysql
1 [root@Mysql_server tools]# lsof -i :3306 ##查询Mysql服务是否开启
2 [root@Mysql_server tools]#
3 [root@Mysql_server tools]# /etc/init.d/mysqld start ##启动Mysql服务
4 Starting MySQL.... SUCCESS!
5 [root@Mysql_server tools]# lsof -i :3306
6 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
7 mysqld 2235 mysql 10u IPv4 22761 0t0 TCP *:mysql (LISTEN)
8 [root@Mysql_server tools]#
1.1.7 配置环境变量
方法1:
1 [root@Mysql_server tools]# cp /application/mysql/bin/* /usr/local/sbin/ ##方法1
方法2:
1 [root@Mysql_server tools]# tail -1 /etc/profile
2 PATH="/application/mysql/bin:$PATH" ##尾部添加如下行
3 [root@Mysql_server tools]# source /etc/profile ##使得配置生效
1.1.8 设置及更改密码
1 [root@Mysql_server tools]# mysqladmin -uroot password 123456
2 [root@Mysql_server tools]# mysqladmin -uroot -p123456 password zhurui
2.1 数据库管理
1 [root@Mysql_server tools]# mysql -uroot -p
2 Enter password:
3 Welcome to the MySQL monitor. Commands end with ; or \g.
4 Your MySQL connection id is 8
5 Server version: 5.5.32 MySQL Community Server (GPL)
6
7 Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
8
9 Oracle is a registered trademark of Oracle Corporation and/or its
10 affiliates. Other names may be trademarks of their respective
11 owners.
12
13 Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
14
15 mysql> show databases; ##查看数据库;
16 +--------------------+
17 | Database |
18 +--------------------+
19 | information_schema |
20 | mysql |
21 | performance_schema |
22 | test |
23 +--------------------+
24 4 rows in set (0.00 sec)
25
26 mysql> drop database test; ##删除test库;
27 Query OK, 0 rows affected (0.00 sec)
28
29 mysql> show databases;
30 +--------------------+
31 | Database |
32 +--------------------+
33 | information_schema |
34 | mysql |
35 | performance_schema |
36 +--------------------+
37 3 rows in set (0.00 sec)
38
39 mysql> select user,host from mysql.user; ##查看用户列表;
40 +------+---------------+
41 | user | host |
42 +------+---------------+
43 | root | 127.0.0.1 |
44 | root | ::1 |
45 | | Mysql\_server |
46 | root | Mysql\_server |
47 | | localhost |
48 | root | localhost |
49 +------+---------------+
50 6 rows in set (0.00 sec)
51
52 mysql> drop user root@'::1'; ##删除无用用户
53 Query OK, 0 rows affected (0.00 sec)
54
55 mysql> drop user ''@'Mysql\_server'; ##对于大写、特殊字符删除不了,下面有介绍
56 Query OK, 0 rows affected (0.00 sec)
57
58 mysql> drop user ''@'localhost';
59 Query OK, 0 rows affected (0.01 sec)
60
61 mysql> drop user 'root'@'Mysql\_server'; 对于大写、特殊字符删除不了,下面有介绍
62 Query OK, 0 rows affected (0.00 sec)
63
64 mysql> select user,host from mysql.user;
65 +------+---------------+
66 | user | host |
67 +------+---------------+
68 | root | 127.0.0.1 |
69 | | Mysql\_server |
70 | root | Mysql\_server |
71 | root | localhost |
72 +------+---------------+
73 4 rows in set (0.00 sec)
74 对于大写、特殊字符删除不了解决办法:
75 mysql> delete from mysql.user where user="" and host="Mysql\_server";
76 Query OK, 1 row affected (0.02 sec)
77
78 mysql> delete from mysql.user where user="root" and host="Mysql\_server";
79 Query OK, 1 row affected (0.00 sec)
80
81 mysql> select user,host from mysql.user; ##将无用用户删除以后,查看用户列表
82 +------+-----------+
83 | user | host |
84 +------+-----------+
85 | root | 127.0.0.1 |
86 | root | localhost |
87 +------+-----------+
88 2 rows in set (0.00 sec)
89 mysql> flush privileges; ##最后使得权限生效
90 Query OK, 0 rows affected (0.00 sec)
创建用户sql语句:
1 mysql> grant all on *.* to 'root'@'localhost' identified by '123456' with grant option;flush privileges;
1 mysql> update mysql.user set host='httpd' where host='localhost' and user='root'; ##变更用户信息
2 Query OK, 1 row affected (0.47 sec)
3 Rows matched: 1 Changed: 1 Warnings: 0
4
5 mysql> select user,host from mysql.user;
6 +------+-----------+
7 | user | host |
8 +------+-----------+
9 | root | 127.0.0.1 |
10 | root | httpd |
11 +------+-----------+
12 2 rows in set (0.00 sec)
13
14 mysql> update mysql.user set host='localhost' where host='httpd' and user='root'; ##修改主机htttpd为localhost
15 Query OK, 1 row affected (0.00 sec)
16 Rows matched: 1 Changed: 1 Warnings: 0
17
18 mysql> select user,host from mysql.user;
19 +------+-----------+
20 | user | host |
21 +------+-----------+
22 | root | 127.0.0.1 |
23 | root | localhost |
24 +------+-----------+
25 2 rows in set (0.00 sec)