mysql是完全开原的关系型数据库,在web后端用的比较多,经典的架构有LAMP,LNMP,其中的M就指mysql。
一:安装
新版的linux里默认的已经不是mysql,而是他的一个分支mariadb ,sudo yum -y install MariaDB-client MariaDB-server MariaDB-devel
启动mysql :
# service start mariadb //启动 # service stop mariadb //关闭 # service restart mariadb //重启 在centos7中 # systemctl start mariadb # systemctl stop mariadb # systemctl restart mariadb
mysql客户端程序:进入客户端程序
$ mysql -u root -p //回车后输入密码 刚安装的没有密码则为 mysql -u root
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or g.
Your MariaDB connection id is 4
Server version: 5.5.50-MariaDB MariaDB Server
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
MariaDB [(none)]>
在客户端里可以使用sql语句进行操作
使用mysqladmin管理数据库:可以执行检查配置文件、检查服务状态、关闭服务器、创建删除数据库等
命令格式
mysqladmin [ options ] command
option选项如下:
create db_name 创建一个名为db_name的 新数据库。 debug 告诉服务器向错误日志写入调试信息。 drop db_name 删除名为db_nam的 数据库和所有表。 extended-status 显示服务器状态变量及其值。 flush-hosts 刷新主机缓存中的所有信息。 flush-logs 刷新所有日志。 flush-privileges 重载授权表(类似reload)。 flush-status 清除状态变量。 flush-tables 刷新所有表。 flush-threads 刷新线程缓存。 kill id,id,... 杀掉服务器线程。 old-password new-password 类似password但 使用旧的(pre-4.1)密码哈希格式保存 密码。 password new-password 设 置一个新密码。 processlist 显示活动服务器线程的列表。 reload 重载授权表。 refresh 刷新所有表并关闭和打开日志文件。 shutdown 停止服务器。 start-slave 开始从服务器上的复制。 status 显示短服务器状态消息。 stop-slave 停止从服务器上的复制。 variables 显示服务器系统变量及其值。 version 显示服务器的版本信息。 --host=host_name, -h hostname 指定登陆的服务器 --user=user_name ,-u user_name 制定登陆名 --password[=password] ,-p[password] 制定登陆密码
修改密码:mysqladmin -uuse_name -poldpassword password newpassword
如果用户名的密码为空则不用 -p参数如:
mysqladmin -uroot password mynewpassword
二:备份与恢复mysqldump:
mysqldump [ options ] db_name [ tables] 导出指定的数据表(需要带上-u -p选项) 如导出test数据库的table_test到test.sql文件中: mysqldump -uroot -pmypassword test table_test > test.sql,如果忽略tables则导出所有表 mysqldump [options] --databases db1 [db2 db3.........] 导出多个数据库中的所有表(需要带上-u -p选项) mysqldump [options] --all-databases 导出所有数据库(需要带上-u -p选项) options选项用来制定导出策略 可以配合crontab 实现自动定时备份数据 恢复:mysql -f -u use_name -p DB_name < test.sql 或者登上客户端后:source test.sql
mysqlhotcopy 只能备份使用MyIASM 引擎的数据库和表
使用sql语句备份与恢复
select * into outfile '备份路径及文件名' from ....................................................使用此备份的不再是sql文件 load data infile '文件路径及文件名' into table db_Name.TableName (指定表名)
2016/12/30