Um conceito muito usado em situações como essa é ter uma tabela de usuários e uma tabela de postagem, vinculando-as com um identificador exclusivo. Esse identificador pode ser qualquer coisa - um id serializado, um nome de usuário, endereço de e-mail etc. - desde que seja exclusivo. A vinculação é feita usando uma restrição de chave estrangeira. Exatamente como isso é feito no MySQL eu não sei, mas no Postgres é feito assim:
CREATE TABLE users (
id serial PRIMARY KEY,
name text
);
CREATE TABLE posts (
content text,
user_id integer REFERENCES users(id) NOT NULL
);
As tabelas são então mescladas usando uma junção. Isso pode ser feito de várias maneiras, mas aqui está uma junção cruzada após a inserção de alguns valores para brincar:
@> INSERT INTO users (name) VALUES ('James');
@> INSERT INTO users (name) VALUES ('Jones');
@> INSERT INTO posts (content, user_id) VALUES ('Hello from James.', 1);
@> INSERT INTO posts (content, user_id) VALUES ('Greetings from Jones.', 2);
@> SELECT U.id AS user_id, U.name, P.content \
FROM users U, posts P \
WHERE U.id = P.user_id;
user_id | name | content
---------+-------+-----------------------
1 | James | Hello from James.
2 | Jones | Greetings from Jones.
YMMV no MySQL, mas acho que as construções acima funcionarão imediatamente.
(edit:INSERTs adicionados para esclarecimento)