前几篇文章介绍了部署web server,静态html之后,接下来到了最关键的一个环节,数据交互。
1)mysql基本使用
mysql -V //查看mysql版本,注意是大写,小写会报错
mysql -u root -p
Enter password: //本地尝试的话初始密码为123456
mysql> //进入交互式命令行
mysql>show databases; //注意结尾要加上分号,没有分号这一句不会结束
mysql>CREATE DATABASE lesson //创建数据库,命令可以大写可以小写
mysql>use lesson //使用数据库
database changed //表示当前数据库活跃
CREATE TABLE study( //创建数据表study
id int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '学生id号',
username varchar(30) NOT NULL DEFAULT '' COMMENT '学生名字',
class tinyint(3) unsigned NOT NULL,
sex enum('男','女','保密') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '保密' COMMENT '性别',
addtime int(10) NOT NULL DEFAULT '0',
PRIMARY KEY (id)
)ENGINE=InnoDB COMMENT = '学生表';
mysql>show tables //显示所有数据表
mysql>RENAME TABLE study TO study_new //修改数据表名称
mysql> insert into study (username,class,sex)VALUES('小王',1,'男'),('小四',2,'女'); //插入数据
mysql>DELETE FROM study WHERE id=1; //删除数据
DROP TABLE study //删除数据表
mysql> DROP DATABASE lesson; //删除数据库
2)mysql配置信息
说明:mysql可以在本地创建数据库,如果网站访问量不大,可以直接在本地创建数据库;如果是网站访问量比较大,可以让web文件和数据库分开。如何把云主机和数据库连接是个问题,必须得找到mysql的配置文件。
sudo su //取得root权限
cd /etc/mysql //进入mysql文件目录
tree //查看目录结构
.
├── conf.d
│ ├── mysql.cnf
│ └── mysqldump.cnf
├── debian.cnf
├── debian-start
├── my.cnf -> /etc/alternatives/my.cnf
├── my.cnf.fallback
├── mysql.cnf
└── mysql.conf.d
├── mysqld.cnf
└── mysqld_safe_syslog.cnf
vim my.cnf //查看mysql的配置文件
!includedir /etc/mysql/conf.d/ //文件内容
!includedir /etc/mysql/mysql.conf.d/
cd conf.d
vim mysql.cnf //里面没什么内容
cd mysql.conf.d
vim mysqld.cnf //大部分配置信息都在这里
以下是配置文件的内容,大部分注释没有拷贝下来
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306 //默认端口
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
bind-address = 127.0.0.1 //本地登录ip
#
# * Fine Tuning
#
key_buffer_size = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 8
myisam-recover-options = BACKUP
#max_connections = 100
#table_cache = 64
#thread_concurrency = 10
#
# * Query Cache Configuration
#
query_cache_limit = 1M
query_cache_size = 16M
事实上我们把开始的指令换成以下,也能登录mysql
mysql -h 127.0.0.1 -u root -p
Enter password //输入密码
补充一点:昨天修改了bind-address之后登录云数据库并没有生效,找了很多原因都没有答案,后来咨询腾讯客服,回答是必须是同一账号买的同一区的云主机和云数据库才能内网连接,就算是不同账号下买的同一区的主机和数据也不能内网连接,这点很容易理解,数据库不能暴露在外面。
3)其他指令
show variables like '%dir%'; //查看数据文件目录
myshow variables like 'port'; //查看连接端口
mysql> select host, user from mysql.user; //查看host user 信息
补充两条指令
curl members.3322.org/dyndns/getip //查看主机公网ip
ifconfig //查看本地网络信息
参考文献
Mysql配置文件详解