linux上mysql的安装和编码配置

2018-08-18  本文已影响0人  菜菜少吃菜

每次在新机器上配数据库总会遇到编码问题,特此记录一下阿里云服务器上安装mysql及配置编码的过程。

mysql安装

wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm 
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum -y install mysql mysql-server mysql-devel

安装文件说明:

mysql: 客户端
mysql-server: 服务端
mysql-devel: 开发用到的库和文件

接下来要开启服务并进入mysql客户端

service mysqld start
mysql -u root -p
image.png

mysql编码

通过SHOW VARIABLES LIKE 'char%';查看编码

image.png
character_set_client: 客户端查询使用的编码
character_set_connection: 数据库处理时使用的编码
character_set_database: 当前数据库使用的编码
character_set_results: 查询结果返回使用的编码
character_set_server: 服务端默认使用的编码
character_set_system: 元数据使用的编码,只读

可以看到当前server使用的是latin编码

修改server编码

修改/etc/my.cnf文件,可通过find / -iname '.cnf' -print*查找

[mysqld]
character-set-server=utf8

添加/etc/my.cnf.d/mysql.cnf文件(也可尝试修改my.cnf文件)

[mysql]
default-character-set=utf8

service mysqld restart重启mysql服务
再查看编码

image.png

mysql常用命令

mysql数据库使用总结
本文主要记录一些mysql日常使用的命令,供以后查询。
1.更改root密码
mysqladmin -uroot password 'yourpassword'
2.远程登陆mysql服务器
mysql -uroot -p -h192.168.137.10 -P3306
3.查询数据库
show databases;
4.进入某个数据库
use databasename;
5.列出数据库中的表
show tables;
6.查看某个表全部字段
desc slow_log;
show create table slow_log\G; (不仅可以显示表信息,还可以显示建表语句)
7.查看当前用户
select user();
8.查看当前所在数据库
select database();
9.创建新数据库(可以指定字符集)
create database db1 charset utf8;
10.创建新表
create table t1 (id int(4), name char(40));
11.查看数据库版本
select version();
12.查看数据库状态
show status; 当前会话状态
show global status; 全局数据库状态
show slave status\G; 查看主从数据库状态信息
13.查询数据库参数
show variables;
14.修改数据库参数
show variables like 'max_connect%';
set global max_connect_errors = 1000;(重启数据库会失效,要在配置文件中修改)
15.查看当前数据库队列
show processlist;
16.创建普通用户并授权给某个数据库
grant all on databasename.* to 'user1'@'localhost' identified by '123456';
17.查询表数据
select * from mysql.db; //查询该表中的所有字段
select count() from mysql.user; //count()表示表中有多少行
select db,user from mysql.db; //查询表中的多个字段
select * from mysql.db where host like '10.0.%';在查询语句中可以使用万能匹配 “%”
18.插入一行数据
insert into db1.t1 values (1, 'abc');
19.更改表的某一行数据
update db1.t1 set name='aaa' where id=1;
20.清空表数据
truncate table db1.t1;
21.删除表
drop table db1.t1;
22.清空数据库中的所有表(数据库名是eab12)
mysql -N -s information_schema -e "SELECT CONCAT('TRUNCATE TABLE ',TABLE_NAME,';') FROM TABLES WHERE TABLE_SCHEMA='eab12'" | mysql -f eab12
23.删除数据库
drop database db1;
24.数据库备份
mysqldump -uroot -p'yourpassword' mysql >/tmp/mysql.sql
25.数据库恢复
mysql -uroot -p'yourpassword' mysql </tmp/mysql.sql
26.新建普通用户
CREATE USER name IDENTIFIED BY 'ssapdrow';
27.更改普通用户密码
SET PASSWORD FOR name=PASSWORD('fdddfd');
28.查看name用户权限
SHOW GRANTS FOR name;
29.脚本中执行mysql命令
mysql -uuser -ppasswd -e"show databases"
echo "show databases"|mysql -uuser -ppassword
以下是执行大量mysql语句采用的方式
mysql -uuser -hhostname -ppasswd <<EOF
mysql语句
EOF

上一篇下一篇

猜你喜欢

热点阅读