安裝mysql數據庫
1、安裝工作:
下載 mysql 源安裝包
[root@ming ~]# wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
安裝 mysql 源
[root@ming ~]# yum localinstall mysql57-community-release-el7-11.noarch.rpm
檢查 mysql 源是否安裝成功
[root@ming ~]# yum repolist enabled | grep “mysql.-community.”
2、安裝 MySQL
[root@ming ~]# yum install mysql-community-server
# 刪除 [root@ming ~]# yum remove ***
3、啟動 MySQL 服務
[root@ming ~]# systemctl start mysqld
4、設置開機啟動
[root@ming ~]# systemctl enable mysqld
[root@ming ~]# systemctl daemon-reload
5、修改 root 本地登錄密碼
mysql 安裝完成之后,在 / var/log/mysqld.log 文件中給 root 生成了一個默認密碼。通過下面的方式找到root 默認密碼:
[root@ming ~]# grep 'temporary password' /var/log/mysqld.log
[root@ming ~]# 2018-11-08T02:32:57.526641Z 1 [Note] A temporary password is generated for root@localhost: 3GNiipwtol.l
然后登錄 mysql 進行修改:
[root@ming ~]# mysql -uroot -p
mysql> set password = password('mima');
6、創建用戶
create user 'mingyuan'@'%' identified by 'mima';
# host:指定該用戶在哪個主機上可以登陸,如果是本地用戶可用localhost,如果想讓該用戶可以從任意遠程主機登陸,可以使用通配符%
# password:該用戶的登陸密碼,密碼可以為空,如果為空則該用戶可以不需要密碼登陸服務器
7、給新創建的用戶授權
mysql> grant all on blog.* to 'mingyuan'@'%';
# privileges:用戶的操作權限,如SELECT,INSERT,UPDATE等,如果要授予所的權限則使用ALL
# databasename:數據庫名
# tablename:表名,如果要授予該用戶對所有數據庫和表的相應操作權限則可用*表示,如*.*
8、拿着創建好的新用戶就可以在其他主機客戶端上訪問已授權的數據庫了。
C:\Users\MingYuan>mysql -h 47.101.137.228 -u mingyuan -p
Enter password: ********
設置與更改用戶密碼
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
# 如果是當前登陸用戶用: SET PASSWORD = PASSWORD("newpassword");
撤銷用戶權限
REVOKE privilege ON databasename.tablename FROM 'username'@'host';
# privilege, databasename, tablename:同授權部分
# 如:REVOKE SELECT ON *.* FROM 'pig'@'%';
# 怎么授權就怎么撤銷,具體信息可以用命令SHOW GRANTS FOR 'pig'@'%'; 查看。
刪除用戶
DROP USER 'username'@'host';
# 注:
# root密碼忘了,修改配置文件 vim /etc/my.cnf 在[mysqld]字段下添加skip-grant-tables,重啟免密碼登錄。
# 登錄后再開個鏈接,還原剛才的修改,更新配置 FLUSH PRIVILEGES;
# 回到第一個窗口里改密碼,SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
9.數據庫原來是SQLite的,想換成Mysql,請查看文章:如何把SQLite數據庫轉換為Mysql數據庫
備份與還原(重點) 1、備份(導出) 全量備份(數據+結構): #mysqldump -uroot -pmima -A > 備份文件路徑 指定庫備份(數據+潔構): #mysqldump -uroot -p密碼 庫名 > 備份文件路徑 多個庫備份(數據+結構): #mysqldump -uroot -p123456 --databases dbl db2 > 備份文件路徑 2、還原(導入) 還原部分(1) mysql命令行source方法和(2)系統命令行方法 1、還原全部數據庫: (1) mysql命令行: mysql> source 備份交件路徑 (2) 系統命令行: #mysql -uroot -p123456 < 備份文件路徑 2、還原單個數據庫(需指定數據庫) (1) mysql> use 庫名 mysql> source 備份文件路徑 (2) #mysql -uroot -p123456 庫名 < 備份文件路徑
mysql字符編碼
查看全局編碼 show variables like '%char%';
查看正在使用的數據庫 select database();
查看單個數據庫編碼 show create database blog;
通過MySQL命令行修改:(編碼可選)
mysql> set character_set_client=utf8;
mysql> set character_set_connection=utf8;
mysql> set character_set_database=utf8;
mysql> set character_set_results=utf8;
mysql> set character_set_server=utf8;
mysql> set character_set_system=utf8;
mysql> set collation_connection=utf8;
mysql> set collation_database=utf8;
mysql> set collation_server=utf8;
當然還有:
修改數據庫的字符集mysql>use mydb
mysql>alter database mydb character set utf8;
創建數據庫指定數據庫的字符集
mysql>create database mydb character set utf8;
10.設置永久的字符編碼,即需要在配置文件中修改數據庫的字符編碼
編輯 /etc/my.cnf,
在里面加入,已經有[XXX]的,在里面直接加入即可。
[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
然后重啟數據庫即可,service mysqld restart