MySQL数据库安装

mkdir -p /application/tools(创建目录)

cd /application/tools

rz(上传压缩包,上传到的目录为当前所在目录)

useradd mysql -s /sbin/nologin -M(创建虚拟用户)

tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz(解压,二进制包)

mv mysql-5.5.32-linux2.6-x86_64 /application/mysql-5.5.32(移动目录并改名)

ln -s /application/mysql-5.5.32/ /application/mysql(创建软连接,最后没有/

/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql(初始化数据库)

WARNING: The host 'db01' could not be looked up with resolveip.

This probably means that your libc libraries are not 100 % compatible

with this binary MySQL version. The MySQL daemon, mysqld, should work

normally with the exception that host name resolving will not work.

This means that you should use IP addresses instead of hostnames

when specifying MySQL privileges !

Installing MySQL system tables...

OK

Filling help tables...

OK

......(显示两个OK

 

chown -R mysql.mysql /application/mysql/(授权管理数据库文件,一定要带/

\cp /application/mysql/support-files/my-small.cnf  /etc/my.cnf(替换系统文件)

 

第一种启动方式:

#配置启动MySQL,因为二进制包默认安装目录为/usr/local

sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe

/application/mysql/bin/mysqld_safe(前台执行,后台执行加&

/application/mysql/bin/mysql(重新开启另一窗口,进入MySQL

 

[root@db01 ~]# killall mysqld(杀死进程)

[root@db01 ~]# killall mysqld

mysqld: 没有进程被杀死(直到出现没有进程可杀死为止)

 

第二种启动方式(平时用这种):

[root@db01 ~]# \cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld(拷贝至系统目录下用来启动服务)

[root@db01 ~]# sed -i 's#/usr/local/mysql#/application/mysql#g' /etc/init.d/mysqld(替换目录)

[root@db01 ~]# vim /etc/init.d/mysqld(可以查看sed替换的内容)

[root@db01 ~]# chmod +x /etc/init.d/mysqld(添加可执行权限)

[root@db01 ~]# echo 'PATH="/application/mysql/bin:$PATH"' >>/etc/profile(更新环境变量)

[root@db01 ~]# source /etc/profile(重启环境变量)

[root@db01 ~]# chkconfig mysqld on(设置开机启动)

[root@db01 ~]# chkconfig --list mysqld(检查开机启动)

mysqld          0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭

[root@db01 ~]# /etc/init.d/mysqld start(启动服务)

Starting MySQL.. SUCCESS!

[root@db01 ~]# netstat -lntup|grep mysqld(查看端口为3306

tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      26023/mysqld       

[root@db01 ~]# mysql(进入MySQL

Ctrl+d(退出)

[root@db01 ~]# mysqladmin -uroot password "123456"(建立密码)

[root@db01 ~]# mysql -uroot -p123456(非交互式登录,-u为指定用户,-ppassword参数)

[root@db01 ~]# mysqladmin -uroot -p123456 password "oldboy"(修改密码,但必须知道原始密码)

[root@db01 ~]# mysql -uroot -p(交互式普通登录)

Enter password:

mysql> show databases;(查看库)

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

| test               |

+--------------------+

4 rows in set (0.00 sec)

mysql> drop database test;(安全优化,删除test库)

Query OK, 0 rows affected (0.02 sec)

mysql> show databases;test库已删除)

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

+--------------------+

3 rows in set (0.00 sec)

mysql> select user,host from mysql.user;(查询MySQL中的用户,其中user,host为列,mysql.usermysql库中的user表)

+-----------+------------+

| user      | host       |

+-----------+------------+

| root      | 127.0.0.1  |

| root      | ::1        |

|           | db01       |

| root      | db01       |

|           | localhost  |

| root      | localhost  |

+-----------+------------+

6 rows in set (0.00 sec)

mysql> drop user ''@'db01';(删掉没用的用户)

Query OK, 0 rows affected (0.00 sec)

 

mysql> drop user ''@'localhost';

Query OK, 0 rows affected (0.00 sec)

 

mysql> drop user 'root'@'db01';

Query OK, 0 rows affected (0.00 sec)

 

mysql> drop user 'root'@'::1'; ::1IPV6

Query OK, 0 rows affected (0.00 sec)

 

mysql> select user,host from mysql.user;

+-----------+------------+

| user      | host       |

+-----------+------------+

| root      | 127.0.0.1  |

| root      | localhost  |

+-----------+------------+

2 rows in set (0.00 sec)

mysql> grant all on *.* to 'root'@localhost identified by '123456' with grant option;flush privileges;(误删库后重建)

Query OK, 0 rows affected (0.00 sec)

 

Query OK, 0 rows affected (0.00 sec)

mysql> delete from mysql.user where user="root" and host="A";(能删除主机名大写或特殊字符的用户)

Query OK, 0 rows affected (0.00 sec)

mysql> drop user 'root'@'A';

ERROR 1396 (HY000): Operation DROP USER failed for 'root'@'a'(不能删除特殊字符的用户包括大写)

mysql> flush privileges;(刷新,让权限生效)

Query OK, 0 rows affected (0.00 sec)

[root@db01 ~]# less /application/mysql/data/db01.err(查看错误日志,db01为主机名,Q按键为退出)


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