centos yum 安装mysql

1.安装:#yum -y install mysql-server

2.修改配置:#vi /etc/my.cnf

暂时修改一下编码(添加在密码下方添加): default-character-set = utf8

3.启动mysql服务,并设定为系统服务:

# chkconfig mysqld on  ← 设置MySQL服务随系统启动自启动

# chkconfig –list mysqld  ← 确认MySQL自启动mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off  ← 如果2–5为on的状态就OK

#service mysqld start    ←启动服务(# /etc/rc.d/init.d/mysqld start也可以)

4.修改root密码(默认密码为空):

# mysql -u root  ← 用root用户登录MySQL服务器

select user,host,password from mysql.user;  ← 查看用户信息

set password for root@localhost=password(‘在这里填入root密码’);  ← 设置root密码

select user,host,password from mysql.user;  ← 查看用户信息

exit  ← 退出MySQL服务器

5.删除匿名用户:

delete from mysql.user where user=”;  ← 删除匿名用户

select user,host from mysql.user;  ← 查看用户信息

6.当前版本信息,日期和数据库:

select version(),current_date;

show databases;  ← 查看系统已存在的数据库

drop database test;  ← 删除名为test的空数据库

show databases;  ← 查看系统已存在的数据库

mysql查看打开的端口: show variables like ‘port’;

7.创建数据库和用户:

create database openfire;   创建一个openfire数据库

grant all privileges on openfire.* to ofuser@localhost identified by ‘ofpass’;   创建ofuser用户,密码为ofpass,对openfire数据库有所有权限。

添加新用户格式:

GRANT ALL PRIVILEGES ON *.* TO user@localhost IDENTIFIED BY ’pass’ WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO user@”%” IDENTIFIED BY ’pass’ WITH GRANT OPTION;

grant select on 数据库.* to 用户名@登录主机 identified by “密码”

删除授权:

revoke all privileges on *.* from root@”%”;

delete from user where user=”root” and host=”%”;

flush privileges;

细粒度授权:

创建一个用户custom在特定客户端it363.com登录,可访问特定数据库fangchandb

mysql >grant select, insert, update, delete, create,drop on fangchandb.* to custom@ it363.com identified by ‘ passwd’

8.备份和恢复数据库:

备份数据库 shell> mysqldump -h yourhost  -u root -p pass dbname >dbname_backup.sql

恢复数据库 shell> mysqladmin -h yourhost -u root -p pass create dbname

shell> mysqldump -h yourhost -u root -p dbname < dbname_backup.sql

如果只想Dump建表指令,则命令如下: shell> mysqladmin -u root -p pass -d databasename > a.sql

如果只想Dump插入数据的sql命令,而不需要建表命令,则命令如下: shell> mysqladmin -u root -p pass -t databasename > a.sql

那么如果我只想要数据,而不想要什么sql命令时,应该如何操作呢? mysqldump -T./ phptest driver

其中,只有指定了-T参数才可以卸出纯文本文件,表示卸出数据的目录,./表示当前目录,即与mysqldump同一目录。如果不指定driver 表,则将卸出整个数据库的数据。每个表会生成两个文件,一个为.sql文件,包含建表执行。另一个为.txt文件,只包含数据,且没有sql指令。

可将查询存储在一个文件中并告诉mysql从文件中读取查询而不是等待键盘输入。

可利用输入重定向实用程序来完成这项工作。例如,如果在文件my_file.sql 中存放有查询,可如下执行这些查询:

如果您想将建表语句提前写在sql.txt中: mysql > mysql -h yourhost -u root -p yourdatabase < /var/home/user/sql.txt